在本地破坏脚手架是否会在服务器中更改/产生影响



我使用脚手架创建了控制器、模型和视图

rails generate scaffold Customer name:string

然后我提交并推送github和服务器中的所有内容。这是大约一个月前的事了。现在我需要解开脚手架。我知道我可以通过做到这一点

rails destroy scaffold Customer 

这将解开脚手架。我的问题是,这个命令rails destroy scaffold Customer不会生成任何迁移文件。然后破坏脚手架在服务器上会有什么影响。它将如何从服务器中删除文件和模型?或者我必须做其他事情来撤消服务器中的脚手架吗?

scaffold generate所做的只是从模板生成文件,并修改config/routes.rb文件。删除选项将删除创建的文件。您可以使用--pretend option来查看更改在不运行该命令的情况下会产生什么影响。所以试试:

rails destroy scaffold Customer --pretend

看看这一行动会改变什么。就我个人而言,由于代码已经投入生产,我可能会使用--pretend来生成需要删除的文件列表,然后在快速查看后手动删除每个文件,以检查这样做是否没有负面影响。

当您更新git时,删除的文件将在git中标记为这样,通过git将更改推送到服务器将删除这些文件。

但是,有几件事需要小心:

迁移:在迁移被推送到生产环境并在那里实现后,不要删除它。相反,创建一个新的迁移,删除customers表。这样就不会打乱迁移顺序,也不会留下未使用的表。

路线:稍后检查您的config/routes.rb,因为我怀疑destroy scaffold是否会正确重新配置。

最新更新