【发布时间】:2011-02-22 18:13:09
【问题描述】:
我正在使用 Rails 3.0.4 和 Ruby 1.9.2
我正在尝试创建一个名为 role 的范围,它接受一个角色字符串并返回所有以 role 作为其角色之一的 User 记录。
问题是User 和Role 有HABTM 关系,我真的不知道如何在常规User.where() 语句中访问这些信息。
这就是我的想法:
scope :role, lamda {|role| where {|user| user.role? role} }
(role? 是我编写的一个方法,它只检查用户是否属于该角色)
有没有办法从哪里传递这样的用户对象?或者完成同样事情的东西?
谢谢。
【问题讨论】:
-
角色是一个单独的模型,还是只是用户表中的一个字段?
-
它是一个单独的模型,具有 Has 和属于 Many 关系。
标签: ruby-on-rails ruby scope relationship