【问题标题】:Basic information on devise设计基本信息
【发布时间】:2012-08-14 16:34:29
【问题描述】:

我正在尝试使用设计构建一个应用程序,其中将有多个角色。

这样有用户/管理员。如果我正确理解文档设计的工作方式,并且您为一个角色构建了一个名为 user 的新模型/控制器,并为管理员构建了一个新模型/控制器。这是他相当简单的问题,但我遇到了这个问题

route.rb 我有以下

  devise_for :admins
  devise_for :customers
  resources :events
  root :to => 'events#index'

我在控制器中放置了这个

  before_filter :authenticate_customer!

我也尝试了关注

  before_filter :authenticate_customer! || :authenticate_admin!

但是,如果我登录时有管理员,这两种技术仍会将我重定向到登录页面。我应该怎么做才能说话,除非我创建了两个不同的网站,然后结果证明是无用的。

这里还有几个问题。当我进入编辑时,它要求我输入 current_password,我怎样才能删除此功能?

我还有办法停止会员或注册(又名管理员)

提前致谢。

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1 devise


    【解决方案1】:

    我现在正在制作一个同时具有多个角色(管理员、学生、教师等)的应用。您需要意识到 Devise 是一个身份验证解决方案,它验证用户是真实的。对于基于角色的权限,您需要一个authorization 解决方案,该解决方案授权用户执行某些操作。 Devise 支持管理员角色,但除此之外,您还需要授权解决方案。

    Cancan 是我建议的宝石。当我为我的应用程序设置它时,我使用了this tutorial。还有一个part 2 to the tutorial,您可能会觉得有趣。设置起来也不是太难(大约 8 个月前我自己也在学习 Rails)。

    【讨论】:

      猜你喜欢
      • 2018-04-03
      • 2015-12-25
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-04
      相关资源
      最近更新 更多