针对当前用户的Ruby on Rails范围测试

时间:2012-11-08 19:18:58

标签: ruby-on-rails

我有一个belongs_to :contact

的请求表

我想在request.rb文件中使用scope语句来测试联系人是否是当前用户。

scope :myopen, where(:contact_id => current_user.id)

返回: 未定义的局部变量或方法`current_user'

我对当前用户ID使用什么?

由于

1 个答案:

答案 0 :(得分:1)

你不能这样做,你也不能这样做。数据库级别没有“当前”用户。

您需要将用户对象传递给类级方法:

def self.open_for_user(user)
  where(:contact_id => user.id)
end