试图在rails上的ruby中重命名Devise Model名称

时间:2013-11-28 19:30:00

标签: ruby-on-rails ruby devise ruby-on-rails-4

我们在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 %>

1 个答案:

答案 0 :(得分:10)

为什么不卸载它然后重新安装模型。

首先:

 rails destroy devise User

然后:

rails generate devise whateveryourmodelnamehere

比试图重命名一切要容易得多,只因为我去过那里;)