2016-09-27 10 views
1

私の質問は、Eloquentを介して新しいモデルにすべてのフィールドを直接追加することができるかどうかです。Laravelで雄弁を介してモデルにフィールドを追加する方法は?

私はしかし、私はそれに関連する何かを見つけることができません、それは

php artisan make:model MyModel --fields=? 

ようなものになるだろうと思います。とにかく、私はたくさんのモデルを生成しなければならず、どんなトリックも本当に感謝しています。

それはmake:modelまたはmake:migrationsコマンドではできません事前

答えて

0

に感謝していますcreate your own console commandことができ、自分でこの機能を追加します。

また、ソースコードmake:modelとのコマンドを参考にしてください。

0

組み込みのオプションだけが--migration-mのように見え、モデル生成を伴う移行が含まれているようです。 L5.3 Docs

5 *。+で動作するように見えるL5.0用のパッケージがあるようです。それはLaracastsで出している:助け

https://laracasts.com/discuss/channels/tips/l5-artisan-command-makemodel

希望を:あなたにもカスタムソリューションを作ることができるように

https://github.com/laracasts/Laravel-5-Generators-Extended

またね!

1

あなたはその後、fieldsでテーブルの列を意味する場合:

を第一に、あなたがモーダルでfieldsを定義する必要はありません。私はLaravelで、モデルを作成している間にfieldsを定義する必要がないことを意味します。また、モデルはデータベーステーブルの列をプロパティとして自動的に処理します。

これで、モデルの作成時ではなく、移行を作成する際に列を定義することができます。 Laracastによって維持されているGeneratorhttps://github.com/laracasts/Laravel-5-Generators-Extended)という名前のこの要求に対応するライブラリがあります。

このジェネレータを使用すると、マイグレーションファイルを生成して、列名と型を指定するDB内のテーブルを作成することができます。ここでは、これを行うことができますどのように、自分のGitHubリポジトリからの例です:

php artisan make:migration:schema create_users_table --schema="username:string, email:string:unique"

あなたはより多くの情報のために自分のドキュメントをチェックアウトすることができます。運が良かった。私がチェックしながら、モデルの作成中に

0

オプションなしで、

は、これは私の端子出力(laravel 5.3)で、

modelmigration

モデルを作成しているときには、フィールドを言及する必要はありません。

例: - ルールに基づいて、あなたは

は、そのモデルが自動的にすべてを扱うユーザーとしてユーザーとして、以下のようなよう
テーブル名を

モデル名を名を維持する必要があり、あなたがする必要はありませんテーブル/フィールド名について言及する。