我的ActiveRecord查询是Note.joins(:user).where(category: "Actions")
并将其生成为SELECT notes.* FROM notes INNER JOIN users ON users.id = notes.user_id WHERE notes.category = 'Actions'
我想从用户表中获取数据而不是从notes表中获取数据意味着我正在尝试生成sql为SELECT users.* FROM users INNER JOIN notes ON users.id = notes.user_id WHERE notes.category = 'Actions';
它的Active Record查询是什么。
如果我正在执行User.joins(:notes).where(category: "Actions")
,那么它会抛出错误Mysql2::Error: Unknown column 'users.category'
,因为类别是notes表的属性而不是users表的属性。
答案 0 :(得分:5)
试试这个 -
User.joins(:notes).where(notes: {category: "Actions"})