【问题标题】:Why flash message won't appear if I use CanCan with Devise?如果我将 CanCan 与 Devise 一起使用,为什么不会出现 flash 消息?
【发布时间】:2013-02-07 23:56:46
【问题描述】:

假设我没有登录。
在这种情况下,它会在访问 mails_controller 中的操作时显示此闪烁通知。

You need to sign in or sign up before continuing.

但是,它不会显示在 community_controller 中。
为什么?以及如何解决?

ma​​ils_controller.rb

class MailsController < ApplicationController
    before_filter :authenticate_user!
    ....
end

communities_controller.rb

class CommunitiesController < ApplicationController
    load_and_authorize_resource :find_by => :id
    before_filter :authenticate_user!
end

【问题讨论】:

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


    【解决方案1】:

    尝试将load_and_authorize_resource 行移到before_filter 之后。 load_and_authorize_resource 行将在找不到成员操作的资源时引发异常,这可能在您到达 before_filter 行之前发生

    【讨论】:

      猜你喜欢
      • 2012-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 2011-09-26
      • 1970-01-01
      相关资源
      最近更新 更多