ホームページ  >  に質問  >  本文

Laravel はモデル移行コントローラーのすべてのコマンド関連ファイルをどのように生成しますか?

これらのコマンドの後

リーリー

Laravel make コマンド ファイル ソース (モデル、コントローラー、移行、シーダー、ファクトリーなど)

すべての基本ファイルはどのように生成され、どこから来たのでしょうか?

P粉803444331P粉803444331262日前470

全員に返信(2)返信します

  • P粉833546953

    P粉8335469532024-01-06 00:56:40

    これらのファイルはスタブ ファイルから生成されます。以下は、Laravel プロジェクト上のスタブ ディレクトリの場所の一部です。これを確認できます。

    モデルの場合:

    ###他の:###

    これらのスタブを制御したい場合は、次のコマンドを適用する必要があります

    このコマンドは、プロジェクト ディレクトリの「stubs」フォルダーにスタブ ファイルを公開します。その後、ニーズに合わせてカスタマイズできます。

    返事
    0
  • P粉685757239

    P粉6857572392024-01-06 00:53:05

    Laravel で生成されるものはすべてテンプレートを使用します

    コンソールでArtisanコマンドを実行すると、Stubというセクションがあり、そのセクションにある唯一のコマンドがphp Artisan stub:publishであることがわかります。

    このコマンドを実行すると、アプリケーションのルート フォルダーに Stubs という新しいフォルダーが生成され、拡張子 .stub を持つ多数のファイルが含まれます。

    これらのファイルを開いて、必要に応じて変更またはカスタマイズできます。今後、Laravel アプリケーションは、クラフターが通常作成するさまざまなものを作成するためのテンプレートをこのフォルダーに読み込みます。

    このテンプレートはすべての Laravel インストールに含まれており、公開は完全にオプションです。実際、Spatie のこのパッケージのように、カスタム コントローラーやモデルの作成専用のソフトウェア パッケージが多数あります。

    発電機上部の内部構造 Laravel には 2 つのコアがあります。

    1. アプリケーション/コンソール/カーネルの最初の
    2. app/Http/kernel
    3. の 2 番目の
    4. Artisan を実行すると、Laravel はアプリケーションをブートストラップし、カーネル コンソールを実行します。 2 つのカーネルには異なる目的があり、実際には別のアプリケーションとして実行されます。

    上記のファイルの特定の世代とは、異なるコントローラー、モデル、移行などを意味します。モデルに関連するものはすべてクラスから生成されます。

    Class ModelMakeCommand extends GeneratorCommand{ .... }

    Illuminate\Foundation\Console

    名前空間の下にあります。

    このクラス

    コードを検査して、スタブ ファイルがモデルに関連する

    のみ さまざまなコマンドを生成するためにどのように使用されているかを確認できますが、戦略など、他にもたくさんあります。 、イベント、宿題など... これがあなたのお役に立ち、あなたの質問の答えになれば幸いです < /p>このトピックの詳細はこちらです

    Laravel ニュースより

    返事
    0
  • キャンセル返事