这就是我今天所拥有的: 我输出了一个@users
列表我需要做的是输出一个用户列表,并说明是否将它们分配给当前项目。
我可以遍历每个用户并检查数据库,但这将是大量的数据库点击,另外10次点击显示10个用户。
我的问题是,有没有一种智能,更有效的铁路方式来做到这一点?思路: 也许我加载项目当前所有用户的列表,并在通过用户循环输出时检查该数组?或者其他一些方法?
有兴趣听取您的建议,如果您不介意使用一小段代码片段来启动我。
谢谢!
更新 - 添加模型
User model
belongs_to :instance
has_many :permissions
has_many :projects, :through => :permissions
Permissions Model:
belongs_to :user
belongs_to :project
belongs_to :role
Project Model:
has_many :permissions
has_many :users, :through => :permissions
我目前使用的查询是:
@users = find(:all, :joins => :instance, :select => 'users.*, instances.domain', :conditions => ['fname LIKE ? or lname LIKE ?', "%#{search}%", "%#{search}%"])
我想知道的是,对于正在显示的用户。它们目前是URL中project_id的成员吗?如果没有,请显示“添加成员”按钮。