0

我想执行一个 SQL 查询并将结果应用于我的能力等级:

res_sql = "SELECT * FROM people 
             where trainer_id != null and people.user_id = user.id 
             and user.role = 'Trainerone'"

sql 应该从 Typ Sportler 返回对象,我可以将其应用于 cancan:

can :manage, **:sportler**
4

1 回答 1

1

我不确定我是否理解你的问题,但也许这可以帮助你一点:

People.joins(:trainer).
       includes(:user).
       where(user_id: user.id, user: { role: 'Trainerone' })

此代码暗示以下内容:

  • has_many培训师
  • 人员belongs_to培训师
  • belongs_to用户
  • role是用户表的一列(joinsincludes(以及 where 子句中的不同关系)可能需要复数,具体取决于您的对象关系)
于 2013-02-27T21:14:16.167 回答