Laravel 5.4 数据库迁移一次之后就不起作用!

我在命令行中生成了一个新的迁移脚本:

https://img1.mukewang.com/5c8f6c45000198c506410369.jpg
当我执行命令:php artisan migrate 时 显示迁移成功,并且在数据库中已经有了这些表:

https://img.mukewang.com/5c8f6c460001216805130175.jpg
https://img1.mukewang.com/5c8f6c47000114f804000072.jpg

我现在需要对这张表中的某个字段进行改名,所以我又生成了一个迁移,在里面写上:

https://img3.mukewang.com/5c8f6c480001a83905540126.jpg
去数据库看 更新成功,可是如果我现在再改的话,比如把 title2 再改回title 直接在这个文件中改,再执行迁移命令,出现这个提示:

https://img4.mukewang.com/5c8f6c49000131c705370069.jpg
好像没有走这步代码。

请问什么不能改了,难道还要再创建一个迁移脚本吗?改一次创建一个肯定不现实

aluckdog
浏览 387回答 1
1回答

www说

是这样的,数据库有张migrate表,里面记录了你每次执行的migrate迁移文件,你把feedback表的字段title改为title2,migrate表已经记录了这个迁移文件,比如你把title2再改回title,此时是不行的。做法:1 执行php artisan migrate:rollback 回滚上一步操作,回滚的依据是down()方法里跟up方法相反的操作,比如up是新增一个字段,down里就是删除这个字段,此时再把up方法里title2改回title,php artisan migrate即可2 再写个新的迁移文件
打开App,查看更多内容
随时随地看视频慕课网APP