我尝试创建一个名为Message
的新脚手架,并获得了此错误消息:
Another migration is already named create_messages
除了更改模型/控制器/视图的名称(我不想这样做)外,该怎么办?
发生这种情况的原因是我先前有一个称为 Message
的支架,我更改为其他名称(运行迁移以与搜索一起进行此操作,并替换所有文件名和可变/类名称)。我了解为什么我会收到此错误消息,只是想知道如何前进。
快速修复是重命名旧迁移(create_messages
),然后尝试再次生成脚手架。
,但建议是让单个create_messages迁移,以便可以通过destrot脚手架命令安全地删除它。
更新:
如果已经有消息模型,则没有生成消息脚手架的点,因为脚手架再次使用其他作品,例如生成控制器,路由等。
如果您已经有一个称为create_messages的迁移,则可能已经有一个消息模型(这意味着您不能将另一个命名为相同)。如果您现在决定要在模型上有一个脚手架以获取额外的控制器并查看代码使用以下名称为列的名称。
rails g scaffold Message name --skip