我有两个模型,即:使用 ruby on rails 中的设计创建的管理员和用户。我想在根目录中为用户和管理员提供一个登录页面;用户注册页面也应该在同一个根页面中,而管理员将有一个单独的注册页面。这类似于 facebook 主页,普通用户在同一页面登录和注册,而名人、乐队或企业则在单独的注册页面。
请帮忙。
我的配置:
- 红宝石版本 - 1.9.3
- Rails 版本 - 3.2.13
- 设计版本 - 3.0.0
我有两个模型,即:使用 ruby on rails 中的设计创建的管理员和用户。我想在根目录中为用户和管理员提供一个登录页面;用户注册页面也应该在同一个根页面中,而管理员将有一个单独的注册页面。这类似于 facebook 主页,普通用户在同一页面登录和注册,而名人、乐队或企业则在单独的注册页面。
请帮忙。
我的配置:
单个用户模型将是所有用户角色的不错选择。
对于不同类型的角色,您可以将另一个模型作为角色。
好榜样
class Role < ActiveRecord::Base
has_many :users
end
用户模型
class User < ActiveRecord::Base
belongs_to :role
end
您可以使用gem 'cancan'进行基于角色的授权
对于视图部分
在首页您可以在不同的部分呈现不同的部分用于登录和注册。
在 home.html.erb
<%=render :partial => 'devise/sessions/form' %>
<%= render :partial => 'devise/registrations/form' %>