Laravel 使用迁移制作模型
Posted
技术标签:
【中文标题】Laravel 使用迁移制作模型【英文标题】:Laravel make model with migration 【发布时间】:2015-10-22 18:15:50 【问题描述】:我正在使用以下命令在 Laravel 5 上创建模型:
php artisan make:model Settings
正如视频课程中显示的那样,一旦创建模型,还必须创建新的迁移文件。但是,在我的情况下,迁移并没有被创造出来。 如何获取模型创建时生成的迁移?
composer.json:
...
"require":
"php": ">=5.5.9",
"laravel/framework": "5.1.*"
,
...
【问题讨论】:
【参考方案1】:我猜你的 L5 版本已经相当老了,因为他们禁止在创建模型的同时创建迁移。
尝试运行ff:
php artisan make:model Settings --migration
【讨论】:
我昨天才用composer安装了Laravel,怎么老了? 你能粘贴你的 composer.json 吗? Laravel 版本为 5.1.8。你是对的,我使用了 --migraiton 并且它有效。发布 composer.json【参考方案2】:尝试使用此命令
php artisan make:model ModelName -m
或
php artisan make:model ModelName --migration
它将创建具有迁移类的模型
【讨论】:
这有点偏题,但就约定而言,Model 和 Name 之间不应该有下划线。只是做这个笔记,因为这似乎是许多初学者会蜂拥而至的问题。 @helios456 我放了下划线,因为人们可以理解将模型读取的名称放在括号一侧的位置 [Model_Name = 模型用户希望他可以在该位置放置任何东西的名称]。 更新删除了下划线,以免误导没看评论的人【参考方案3】:你也可以使用这个命令:
php artisan make:model ModelName -m
如果你想为你的模型制作控制器,你应该写这个命令:
php artisan make:model ModelName -mc
// or
php artisan make:model ModelName -mcr //(r: for resource methods)
【讨论】:
【参考方案4】:2020 年更新:
您现在可以这样做:
php artisan make:model ModelName -a
创建一个:
-
型号
控制器
播种者
迁移
工厂
全部使用一个命令。
【讨论】:
【参考方案5】:您可以使用make:model
等标志;
php artisan make:model Setting -m
帮助:php artisan make:model --help
【讨论】:
【参考方案6】:php artisan make:model Image -m
创建迁移,模型文件
php artisan make:model Image -mcr
使用资源创建迁移、模型、控制器
【讨论】:
【参考方案7】:如果您想在生成模型时生成数据库迁移,可以使用 --migration 或 -m 选项
php artisan make:model 设置 --migration
php artisan make:model 设置-m
【讨论】:
【参考方案8】:这很奇怪,因为要跳过迁移,您可以使用标志 --no-migration
。这意味着调用php artisan make:model Foo
应该会自动创建所有内容。工匠是否显示任何错误?你检查过日志吗?你使用的是什么 Laravel 版本? 5? 5.1?
【讨论】:
它是最新版本,我昨天刚安装并开始学习 Laravel。查看存储/日志中的日志文件没有显示任何错误。 Artisan 已成功完成,也没有显示任何错误。以上是关于Laravel 使用迁移制作模型的主要内容,如果未能解决你的问题,请参考以下文章