1

我有两个模型,即:使用 ruby​​ on rails 中的设计创建的管理员和用户。我想在根目录中为用户和管理员提供一个登录页面;用户注册页面也应该在同一个根页面中,而管理员将有一个单独的注册页面。这类似于 facebook 主页,普通用户在同一页面登录和注册,而名人、乐队或企业则在单独的注册页面。

请帮忙。

我的配置:

  1. 红宝石版本 - 1.9.3
  2. Rails 版本 - 3.2.13
  3. 设计版本 - 3.0.0
4

1 回答 1

0

单个用户模型将是所有用户角色的不错选择。

对于不同类型的角色,您可以将另一个模型作为角色。

好榜样

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' %>
于 2013-07-25T12:23:36.203 回答