我的问题是,是否可以通过Eloquent将所有字段直接添加到新模型中。
我想这会像
php artisan make:model MyModel --fields=?
然而,我找不到与此有关的任何事情。无论如何,我必须生成很多模型,任何技巧都会非常感激。
提前致谢
答案 0 :(得分:1)
如果你的意思是fields
的表格,那么:
首先,您无需在模态中定义fields
。我的意思是在Laravel中创建模型时无需定义fields
。此外,模型自动使用数据库表的列作为其属性。
因此,现在您可能希望在创建迁移时定义列,而不是在创建模型时定义列。有一个库可以满足由Laracasts维护的名为Generator
(https://github.com/laracasts/Laravel-5-Generators-Extended)的需求。
使用此生成器,您可以生成迁移文件以在DB中创建表,同时指定列名称及其类型。这是他们的Github回购中的一个例子,你如何做到这一点:
php artisan make:migration:schema create_users_table --schema="username:string, email:string:unique"
您可以查看他们的文档以获取更多信息。祝你好运。
答案 1 :(得分:0)
使用make:model
或make:migrations
命令是不可能的,但您可以create your own console command并自行添加此功能。
另外,请查看make:model
和make:migration
命令的源代码,以了解如何执行此操作。
答案 2 :(得分:0)
看起来只有内置选项--migration
和-m
才能包含模型生成的迁移。 L5.3 Docs
看起来有一个L5.0的包,看起来它可以在5。* +中使用。它由Laracasts推出:
https://github.com/laracasts/Laravel-5-Generators-Extended
看起来您也可以制作自定义解决方案:
https://laracasts.com/discuss/channels/tips/l5-artisan-command-makemodel
希望有所帮助!
答案 3 :(得分:0)
创建模型时没有选项,
这是我的终端输出(laravel 5.3),当我检查时,
创建模型时,您不需要提及字段。
例如: - 根据规则,你应该保留名称,如下所示,
型号名称为用户
表名为用户
然后模型自动处理所有内容,您不需要提及表/字段名称。
答案 4 :(得分:0)
我自己一直在寻找相同的东西,因为我以前在以前的框架中那样工作,但是找不到它,或者至少找不到我想要的东西,所以我做了我的事情。您可以查看是否喜欢: https://github.com/Triun/laravel-model-base
它将读取您的数据库,并为您创建laravel雄辩的模型。
它的意思是非常灵活,所以配置可能有点复杂,我想我没有赶上文档,但是您可以问我是否不知道如何使它做什么你想要的。
基本上有4个自定义级别:
当然,欢迎提出建议和建议。