下面由laravel教程栏目给大家介绍laravel 数据库迁移功能的一个坑,希望对需要的朋友有所帮助!
环境:Laravel 8需求用到 Laravel 数据库迁移功能,因本人是强迫症处女座所以喜欢自己命名文件例如:

但是在执行迁移的时候报错:

经过几轮尝试发现 Laravel 对迁移文件的 文件名命名格式 是有固定的解析的,所以当我文件名完全按照它的风格去写的时候就正常运行了

库宝AI
库宝AI是一款功能多样的智能伙伴助手,涵盖AI写作辅助、智能设计、图像生成、智能对话等多个方面。
109 查看详情
当然类名也必须统一:

吐槽的点在于:文档中并没有提及文件名称命名风格的强制要求 故今天记录下此小坑貌似是另一个坑或者说是框架的不足:那就是表结构 没办法持续集成,例如今天我需要对某个表加字段,但此时已经迁移过了,那就会 没办法再次运行同一个迁移文件必须要创建新的迁移文件,当然这我也理解这是为了方便回滚,但是我的需求就是为了新功能而持续加字段,并不需要回滚,所以我的 解决方案 就是每次都清空 migrations 这张表,因为这张表就是控制能否反复运行同一个迁移文件的地方,代码如下:
trait Trait_Migrate{ /** * @desc 数据表:初始化 * @return Void */ static public function CI_Table_Structure() : Void { # 清空记录表以保证能持续迁移 DB::table( 'migrations' ) -> truncate(); # 执行迁移 Artisan::call( 'migrate --force --path=/database/migrations/' . SELF::$CI_File ); }}
总的来说完全按照框架文档的规则来就会一帆风顺,可是做项目遇到框架默认功能无法满足需求的情况是非常正常的
相关推荐:最新的五个Laravel视频教程
以上就是避坑!Laravel数据库迁移功能的一个坑的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/346248.html
微信扫一扫
支付宝扫一扫