Rails 3 +设计不同的型号名称

时间:2013-03-15 15:52:24

标签: ruby-on-rails-3 devise

我正在为两个Web应用程序共享一个数据库。 User模型已经被用于其中一个应用程序,因此,为了登录到另一个应用程序,我必须创建另一个模型以避免混合用户信息。

我可以让Devise为这个名为SystemUser的新模型工作。问题是现在我必须使用另一个名称的每个变量。例如:current_system_usersystem_user_signed_in?等。我在整个应用程序中使用这些变量及其原始名称,我想知道是否有办法避免覆盖它。例如:通过创建一个名为current_user的方法返回current_system_user,并使用之前提到的其他变量。

3 个答案:

答案 0 :(得分:1)

我认为这应该可以解决问题:

devise_for :users, class_name: 'SystemUser'

答案 1 :(得分:0)

您是否考虑过将CanCan用于角色?

https://github.com/ryanb/cancan

答案 2 :(得分:0)

我终于可以通过再次生成Devise视图来解决问题。我不知道为什么,但是devise / sessions文件夹丢失了,它正在用另一个视图执行它,当我开始使用它时,它起作用了。

非常感谢。