Rails设计用户帮助

时间:2011-09-29 01:14:38

标签: ruby-on-rails devise

在设计中我将如何,我不确定如何表达它,返回一个用户。 我能用user_signed_in吗?但是用户怎么样? 我想在show中检查@user是否与当前登录的用户相同。

3 个答案:

答案 0 :(得分:6)

Devise有类似current_user的方法,它返回登录的“用户”。

此外,根据您的“用户”模型,辅助方法将相应调整。因此,如果您的Admin类是您的设计模型,则可以使用类似current_admin的内容,等等。

答案 1 :(得分:4)

Devise有一个可用的current_user助手。

答案 2 :(得分:2)

你可以这样做:

def show
  @user = User.find(params[:id])
  if @user == current_user
    # something
  end
end

但也许你只想这样做?

class UsersController < ApplicationController
  before_filter :authenticate_user!
  def show
    @user = User.find(params[:id])
  end
end