我正在为两个Web应用程序共享一个数据库。 User模型已经被用于其中一个应用程序,因此,为了登录到另一个应用程序,我必须创建另一个模型以避免混合用户信息。
我可以让Devise为这个名为SystemUser的新模型工作。问题是现在我必须使用另一个名称的每个变量。例如:current_system_user
,system_user_signed_in?
等。我在整个应用程序中使用这些变量及其原始名称,我想知道是否有办法避免覆盖它。例如:通过创建一个名为current_user
的方法返回current_system_user
,并使用之前提到的其他变量。
答案 0 :(得分:1)
我认为这应该可以解决问题:
devise_for :users, class_name: 'SystemUser'
答案 1 :(得分:0)
您是否考虑过将CanCan用于角色?
答案 2 :(得分:0)
我终于可以通过再次生成Devise视图来解决问题。我不知道为什么,但是devise / sessions文件夹丢失了,它正在用另一个视图执行它,当我开始使用它时,它起作用了。
非常感谢。