我正在使用Rails 3.2,并且已经开始使用脚手架并从中构建,但已经意识到我需要重命名整个脚手架(模型,视图,控制器,db:migrate
等)。是否有内置的方法来执行此操作,或者我应该手动执行此操作?
答案 0 :(得分:9)
我认为rails
提供的任何内容都不会重命名models/controllers/views/tests
等名称 - 无论是否作为脚手架的一部分。
您必须手动更改它。
如果它是您刚开始使用的全新应用程序,则可能更容易删除整个目录/删除数据库,然后重新开始。
如果没有,您将必须浏览脚手架生成创建/修改的文件,并手动修改它们。
确保drop_and_recreate相关表,或添加迁移以重命名表。有关相关建议,请参阅How do you write a migration to rename an ActiveRecord model and its table in Rails?。
答案 1 :(得分:0)
我认为没有一种现成的方法可以重命名由脚手架生成的文件,您要做的就是创建一个新的脚手架并将代码从旧代码复制到新文件中,从工厂,模型,控制器及其组件中复制内容各自的规格文件到新支架。然后使用命令
删除旧的脚手架rspec d scaffold <Model Name>
,您必须创建一个新迁移,才能从数据库中删除该旧表。然后运行您的迁移。