对多种类型的用户使用devise invitable

时间:2014-11-20 04:28:53

标签: ruby-on-rails ruby devise devise-invitable

我仍然在努力做点什么,但我没有做太多(我是Ruby和Rails的新手),我要做的是为我的项目实现3种类型的用户(admin,role1和role2),每个人都有不同的观点,可以做不同的事情。

我的用户模型是设计用户模型,我在其中添加了一个名为“role”的属性来区分它们,例如,在我的Admin控制器上我有:

class AdminController < ApplicationController
    before_filter :authenticate_user!
    before_filter :admin_only

...

before_filter :admin_only

  def admin_only
    unless current_user.role == "Admin"
        redirect_to :back
    end
  end
end

我希望我做得对...

我也在使用devise_invitable使管理员通过邮件邀请注册新用户,我唯一缺少的是认证和注册新用户以保持我想要的方式是更改属性“角色“当我注册一个新用户时,如果我从特定路径发送邀请,则必须是role1;如果我从另一个路径发送邀请,则必须是role2,那么,我对拥有该用户的用户注册的看法是什么role1就是这样。

<div class="container">

<p>Input the email of the new user.</p>

<%= form_for resource, :as => resource_name, :url => invitation_path(resource_name), :html => {:method => :post} do |f| %>
  <%= devise_error_messages! %>

  <% resource.class.invite_key_fields.each do |field| -%>
    <p><%= f.label field %><br />
    <%= f.text_field field %></p>
  <% end -%>

  <p><%= f.submit t("devise.invitations.new.submit_button") %></p>
<% end %>

我不知道如何做到这一点,有人可以帮助我吗?

0 个答案:

没有答案