MichaelJennings/laravel-make

一个让Laravel 'make'命令全局可用的应用程序。

v2.0.0 2023-03-16 18:19 UTC

This package is auto-updated.

Last update: 2024-09-16 21:36:27 UTC


README

此包允许您在Laravel应用程序之外使用Laravel make命令,这在包开发中非常有用。

全局安装

要全局安装包,请运行 composer global require michaeljennings/laravel-make

当Composer安装完成后,您应该在命令行中能够使用laravel-make,它应该列出所有可用命令。

如果您使用的是Windows操作系统,并且提示laravel-make不是一个函数,那么请确保您的全局Composer .bin目录已包含在$PATH环境变量中。

按项目安装

要按项目安装,请运行 composer require michaeljennings/laravel-make

或者将包添加到您的composer.json文件中。

{
  ...
  "require-dev": {
    "michaeljennings/laravel-make": "~1.0",
  },
  ...
}

然后运行 composer update 来安装包。

安装完成后,运行 vendor/bin/laravel-make,您应该会看到所有可用命令的列表。

配置

默认情况下,Laravel命令尝试将新文件放置在app目录和App命名空间中,但这很少是包的设置方式。

为了解决这个问题,您可以在包的根目录中创建一个.laravel-make文件,并在其中定义您特定的配置。此文件类似于.env文件,下面是一个示例文件,然后是每个配置选项的说明。

BASE_PATH=/src
BASE_NAMESPACE=Example\Package
USER_MODEL=Example\Package\Models\User

基本路径

所有文件(除了迁移和种子文件)将附加到的基本路径。

默认为 /app

BASE_PATH=/src

基本命名空间

这是将附加到每个类的根命名空间。

默认为 'App'

BASE_NAMESPACE=Example\Package

用户模型

这个选项有点奇怪。一些模板需要应用程序的用户模型路径,默认情况下Laravel尝试从auth配置文件中查找它。由于我们没有auth配置文件可用,我们必须在.laravel-make文件中指定它。

默认为 'App\User'

USER_MODEL=Example\Auth\Models\User

控制台命令路径

命令文件应存储的路径。默认情况下,它将在基本路径之前附加。

默认为 '{BASE_PATH}/Console/Commands'

CONSOLE_COMMAND_PATH=src/Commands

控制台命令命名空间

将附加到所有控制台命令的命名空间。

默认为 '{BASE_NAMESPACE}\Console\Commands'

CONSOLE_NAMESPACE=Example\Package\Commands

控制器路径

控制器文件应存储的路径。默认情况下,它将在基本路径之前附加。

默认为 '{BASE_PATH}/Http/Controllers'

CONTROLLER_PATH=src/Controllers

控制器命名空间

将附加到所有控制器的命名空间。

默认为 '{BASE_NAMESPACE}\Http\Controllers'

CONTROLLER_NAMESPACE=Example\Package\Controllers

事件路径

事件文件应存储的路径。默认情况下,它将在基本路径之前附加。

默认为 '{BASE_PATH}/Events'

EVENT_PATH=src/Events

事件命名空间

将附加到所有事件的命名空间。

默认为 '{BASE_NAMESPACE}\Events'

EVENT_NAMESPACE=Example\Package\Events

监听器路径

监听器文件应存储的路径。默认情况下,它将在基本路径之前附加。

默认为 '{BASE_PATH}/Listeners'

LISTENER_PATH=src/Listeners

监听器命名空间

将附加到所有监听器的命名空间。

默认为 '{BASE_NAMESPACE}\Listeners'

LISTENER_NAMESPACE=Example\Package\Listeners

邮件路径

邮件文件应存储的路径。默认情况下,它将在基本路径之前附加。

默认为 '{BASE_PATH}/Mail'

MAIL_PATH=src/Mail

邮件命名空间

将添加到所有邮件类的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Mail'

MAIL_NAMESPACE=Example\Package\Mail

中间件路径

中间件文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}/Middleware'

MIDDLWARE_PATH=src/Middleware

中间件命名空间

将添加到所有中间件类的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Middleware'

MIDDLWARE_NAMESPACE=Example\Package\Middleware

迁移路径

迁移文件应存储的路径。默认情况下,这将添加基本路径。

默认为 'database/migrations'

MIGRATION_PATH=migrations

模型路径

模型文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}'

MODEL_PATH=src/Models

模型命名空间

将添加到所有模型的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Models'

MODEL_NAMESPACE=Example\Package\Models

通知路径

通知文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}/Notifications'

NOTIFICATION_PATH=src/Notifications

通知命名空间

将添加到所有通知的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Notifications'

NOTIFICATION_NAMESPACE=Example\Package\Notifications

策略路径

策略文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}/Policies'

POLICY_PATH=src/Policies

策略命名空间

将添加到所有策略的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Policies'

POLICY_NAMESPACE=Example\Package\Policies

提供者路径

提供者文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}/Providers'

PROVIDER_PATH=src/Providers

提供者命名空间

将添加到所有提供者的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Providers'

PROVIDER_NAMESPACE=Example\Package\Providers

请求路径

请求文件应存储的路径。默认情况下,这将添加基本路径。

默认为 '{BASE_PATH}/Requests'

REQUEST_PATH=src/Requests

请求命名空间

将添加到所有请求的前缀命名空间。

默认为 '{BASE_NAMESPACE}\Requests'

REQUEST_NAMESPACE=Example\Package\Requests

种子路径

种子文件应存储的路径。默认情况下,这将添加基本路径。

默认为 'database/seeds'

SEEDER_PATH=seeds