是Devise的:authenticate_user!同样如:signed_in_user?

时间:2012-10-31 12:37:36

标签: ruby-on-rails devise

这来自Rails Tutorial Book

http://ruby.railstutorial.org/

  before_filter :signed_in_user, only: [:create, :destroy]


  def signed_in_user
    unless signed_in?
      store_location
      redirect_to signin_url, notice: "Please sign in."
    end
  end

  def signed_in?
    !current_user.nil?
  end

因此,代码只允许用户在登录时创建和销毁帖子。

我想知道是否使用设计 before_filter :authenticate_user!, only: [:create, :destroy]执行此操作。结果是一样的吗?

1 个答案:

答案 0 :(得分:4)

不,不一样!你必须使用

before_filter :authenticate_user!, only: [:create, :destroy

在你的情况下。观看这些视频以便更好地理解:

更新:

以下是设计维基文章的完整列表:https://github.com/plataformatec/devise/wiki/_pages