我正在处理具有以下两个视图文件的遗留项目:
app/views/devise/registrations/_sign_up.html.erb
app/views/devise/devise/registrations/_sign_up.html.erb
我知道第一个文件在哪里使用,但不知道第二个文件。如何找到使用此视图的位置?
如果我认为它没有在任何地方使用(我希望是这样),我怎么能 100% 确定我是对的呢?
我正在处理具有以下两个视图文件的遗留项目:
app/views/devise/registrations/_sign_up.html.erb
app/views/devise/devise/registrations/_sign_up.html.erb
我知道第一个文件在哪里使用,但不知道第二个文件。如何找到使用此视图的位置?
如果我认为它没有在任何地方使用(我希望是这样),我怎么能 100% 确定我是对的呢?
在这些情况下,我通常只是grep
提及sign_up
. 全部找到它们,重命名您感兴趣的文件以确保它不可用该名称,然后逐一检查其用途以确保它们没有损坏。最好的情况是你可以通过观察 grep 结果来弄清楚。我很确定嵌套devise/devise
目录是一个意外,可以删除。
为什么devise
目录里面有/devise/
目录。我可以根据经验告诉你 devise 不会以这种方式设置应用程序,如果你尝试使用样板设计,这个目录是无用的。
你的设计文件夹中不应该有另一个设计文件夹,看起来像以前的维护者不小心复制了它或其他东西。我建议移动或删除文件夹,并通过测试与设计相关的所有功能(注册、登录、注销)来查看应用程序是否仍然有效。如果确实如此(它可能会),那就太好了!
如果不能 100% 保证经验,我们需要一些试验和错误。
首先,在该模板上添加一些愚蠢的错误代码,比如
<%= nil = 1 %>
然后,由于这个模板是关于注册的,所以在app中查看注册相关功能,看看是否会抛出错误。如果集成测试可用,那就更好了,只需运行它们。
如果没有错误,您将更有信心删除此模板。
底线是您对该文件进行了版本控制,因此如果您真的错误地删除了它,您可以在将来恢复它。
添加: 回复评论
还有另一种方法。检查哪些单词/html 代码是特殊的,然后将它们 grep 到/tmp
. 或者如果那是一个公共应用程序,谷歌“特殊词网站:theapp.com”。结合这三种方法,如果还是找不到。删除它!你不会后悔的!