我们在rails应用程序上有2个ruby,其中一个使用了另一个的json输出。但是我们决定整合它们,这些问题遇到了很多问题。
现在的问题是,一个系统的作者曾经为所有用户身份验证和注册“设计”gem,这很好。但是,当我们不得不整合它们时,它会导致问题,因为另一个系统也有一个名为users的模型,而不是用于此目的。
将设计用户模型重命名为“site-user”(我目前正在尝试)之类的内容会更容易。 比重新命名其他模型。
我尝试将与所有文件相关的所有内容重命名为siteuser而不是用户但仍然收到错误。任何人对此都有任何建议。如果我能让这个设计用户使用与“用户”不同的型号名称,我将能够取得很大的进步,但这证明非常烦人。
当前错误是
Devise中的NoMethodError :: Sessions #new - 用“if user_signed_in”突出显示该行
<li>
<%= link_to t('nav.support'), 'http://banana.sweatervest.net/' %>
</li>
<%- if user_signed_in? -%>
<%- if controller_name != 'dashboard' -%>
<li>
<%= link_to t('nav.dashboard'), :dashboard %>
答案 0 :(得分:10)
为什么不卸载它然后重新安装模型。
首先:
rails destroy devise User
然后:
rails generate devise whateveryourmodelnamehere
比试图重命名一切要容易得多,只因为我去过那里;)