不同型号的设计
different Models with devise
是否可以使用设计生成不同的模型并分别具有不同的注册表单?
我需要两种类型的用户,他们都可以登录、注册等,但他们接受不同的参数。
我尝试创建不同的模型,但在我的视图中仍然只给我一个具有唯一注册表单的文件夹。我还尝试将两种类型用户的所有参数都放入此表单中,但它 returns
undefined method `philosophy' for #<User:0x007fbab0961ca8>
其中 philosophy 是我第二个用户的参数。
我需要这个来工作,因为我正试图通过活动记录将这 2 个用户关联到另一个
user belongs_to :charity
charity has_many :users
知道如何解决这个问题吗?
要生成多个模型(例如,用户和管理员),只需使用:
> rails generate devise User
> rails generate devise Admin
要生成不同的视图集:
在 config/initializers/devise.rb
文件中设置 config.scoped_views = true
。
您现在可以根据角色获得视图,例如
users/sessions/new
和 admins/sessions/new
。如果在其中找不到视图
范围,Devise 将使用 devise/sessions/new 处的默认视图。
您可以使用生成器生成作用域视图:
$ rails generate devise:views users
$ rails generate devise:views admins
是否可以使用设计生成不同的模型并分别具有不同的注册表单?
我需要两种类型的用户,他们都可以登录、注册等,但他们接受不同的参数。
我尝试创建不同的模型,但在我的视图中仍然只给我一个具有唯一注册表单的文件夹。我还尝试将两种类型用户的所有参数都放入此表单中,但它 returns
undefined method `philosophy' for #<User:0x007fbab0961ca8>
其中 philosophy 是我第二个用户的参数。
我需要这个来工作,因为我正试图通过活动记录将这 2 个用户关联到另一个
user belongs_to :charity
charity has_many :users
知道如何解决这个问题吗?
要生成多个模型(例如,用户和管理员),只需使用:
> rails generate devise User
> rails generate devise Admin
要生成不同的视图集:
在 config/initializers/devise.rb
文件中设置 config.scoped_views = true
。
您现在可以根据角色获得视图,例如
users/sessions/new
和 admins/sessions/new
。如果在其中找不到视图
范围,Devise 将使用 devise/sessions/new 处的默认视图。
您可以使用生成器生成作用域视图:
$ rails generate devise:views users
$ rails generate devise:views admins