次の記事では、laravelがカスタムのartisan makeコマンドを作成して新しいクラスファイルを作成する方法について主に紹介しています。必要な方は一緒に見てみましょう。
Laravel は、非ブラウザーのビジネス ロジックを処理するために、Artisan を通じて強力なコンソール コマンドを提供します。
まえがき
この記事では主に、laravelによるカスタムのartisan makeコマンドの作成による新しいクラスファイルの作成について紹介します。以下では多くを述べませんが、詳細な紹介を見てみましょう。
laravel を開発する際には、artisan make:controller
やその他のコマンドをよく使用して、新しいコントローラー、モデル、ジョブ、イベント、その他のクラス ファイルを作成します。 Laravel5.2 では、artisan make
コマンドは次のファイルの作成をサポートしています:
make:auth Scaffold basic login and registration views and routes make:console Create a new Artisan command make:controller Create a new controller class make:event Create a new event class make:job Create a new job class make:listener Create a new event listener class make:middleware Create a new middleware class make:migration Create a new migration file make:model Create a new Eloquent model class make:policy Create a new policy class make:provider Create a new service provider class make:request Create a new form request class make:seeder Create a new seeder class make:test Create a new test class
ただし、デフォルトのファイルはサポートされていない場合があります。たとえば、プロジェクトでリポジトリ モードを使用してモデル ファイルをさらにカプセル化する場合、リポジトリ クラス ファイルを頻繁に作成する必要があるため、時間の経過とともに ## を通じてクラスを自動的に作成できるかどうか疑問に思うでしょう。 #artisan make:repository コマンドを使用して、毎回手動でファイルを作成する必要はありません。
artisan make コマンドに対応する PHP プログラムは、Illuminate\Foundation\Console ディレクトリに配置されています。Illuminate\Foundation\Console\ProviderMakeCommand クラスを参照します。独自の
職人 make:repository コマンドを定義します。
1. コマンド クラスを作成します。
namespace App\Console\Commands; use Illuminate\Console\GeneratorCommand; class RepositoryMakeCommand extends GeneratorCommand { /** * The console command name. * * @var string */ protected $name = 'make:repository'; /** * The console command description. * * @var string */ protected $description = 'Create a new repository class'; /** * The type of class being generated. * * @var string */ protected $type = 'Repository'; /** * Get the stub file for the generator. * * @return string */ protected function getStub() { return __DIR__.'/stubs/repository.stub'; } /** * Get the default namespace for the class. * * @param string $rootNamespace * @return string */ protected function getDefaultNamespace($rootNamespace) { return $rootNamespace.'\Repositories'; } }
2. コマンドクラスに対応するテンプレートファイルを作成します。
namespace DummyNamespace; use App\Repositories\BaseRepository; class DummyClass extends BaseRepository { /** * Specify Model class name * * @return string */ public function model() { //set model name in here, this is necessary! } }
3. コマンド クラスを登録します
##RepositoryMakeCommand を App\Console\Kernel.php に追加します
protected $commands = [ Commands\RepositoryMakeCommand::class ];
##わかりました。これで、
make:repository
php artisan make:repository TestRepository php artisan make:repository SubDirectory/TestRepository
Laravel でリソースルーティングカスタム URL を書き換える実装方法について
以上がlaravelを通じて新しいクラスファイルを作成するためのカスタムartisan makeコマンドを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。