在模型中获取current_user的id

时间:2013-03-08 18:56:37

标签: ruby-on-rails activerecord rails-activerecord railstutorial.org rails-models

请原谅我这是一个新问题,但我想知道他们如何在用户模型中获得当前用户的ID:
Listing 10.39 我曾经一次又一次地读它,我仍然无法弄明白:(

class User < ActiveRecord::Base
  .
  .
  .
  def feed
    # This is preliminary. See "Following users" for the full implementation.
    Micropost.where("user_id = ?", id)
  end
  .
  .
  .
end

1 个答案:

答案 0 :(得分:1)

feed是一个实例级方法,因此self将拥有用户对象。因此id相当于self.id

例如: 假设您在user_method模型中有User

def user_method
  puts self  #prints user object
  puts self.id #prints user id
  puts id #prints user id
end

user = User.create(user_attributes)
user.user_method

同样,在某个feed对象上调用user