首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel如何跟踪批次价值?

问Laravel如何跟踪批次价值?
EN

Stack Overflow用户
提问于 2019-01-31 18:14:44
回答 1查看 3.1K关注 0票数 2

我创建了一些迁移文件,创建了表"users“和"user_info”。运行php artisan migrate创建了这些表,并将它们添加到数据库的迁移表中。

然后,我需要创建一个新列,并向user_info表中添加一些新行。因此,我创建了一个新的迁移文件,其名称与用于创建"user_info“表的第一个迁移文件同名。因为Laravel在文件中添加了时间戳,所以我认为这不会产生任何问题。然而,在新的迁移文件中,我使用了与第一个迁移文件相同的类名,做了我想要的更改,最后再次运行php artisan migrate。

这似乎造成了问题,因为我收到一个错误,说这个类名已经在使用了。因此,我将迁移文件名更改为user_info2,并使用类名UserInfo2,然后重试。这一次,它起作用了,并且在数据库的迁移表中,批处理被提升到2。

但是,既然我同时更改了文件名和类名,Laravel如何知道迁移文件实际上与第一个user_info迁移文件相关呢?我认为它们必须具有相同的名称,以便使Laravel能够控制“批处理值”。

谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-31 18:26:29

迁移的批号用于指定在运行php artisan migrate时创建的多个迁移。

例如,您创建了两个迁移:users和user_info,您运行php artisan migrate,这两个迁移将被创建,并将由相同的批号引用: 1。

然后,您创建另一个迁移,当您迁移此迁移时,此迁移的批号将为2。

当您根据批号执行php artisan migrate:rollback时,Laravel知道要回滚哪些迁移,在这种情况下,只有一个批号为2的迁移。

因此,批处理在这个术语中指的是尚未运行的迁移数组。为了使回滚成为可能,它们将被相同的ID引用。

希望这能解释更多。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54458207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档