どのようにしてこの種類のSQLをアクティブレコード構文に変換しますか? 私は主にINを他の要素と解決するのに苦労しました。SQLをアクティブレコードに変換するクエリの照合は
SELECT \"accounts\".* FROM account_categories, accounts WHERE \"accounts\".\"worksheet_id\" = 5 AND (account_categories.name IN ('Savings','Deposit') AND account_categories.id = accounts.account_category_id) ORDER BY \"accounts\".\"id\" ASC"
worksheet_idはいつも私が勘定モデルのスコープでこれを使用したい5.
ではありません、異なります。このコードを試してみてください
scope :savings_and_deposit, -> { from('account_categories, accounts').where("account_categories.name = ? AND account_categories.id = zen_accounts.account_category_id", ['Savings','Deposit]) }
最後の例では、両方の名前を問合せても機能しません。どのエラーが表示されますか?そしてあなたは '[Savings '、' Deposit]'を引用していませんでした。 –
@Evolve:(?)で 'account_categories.name 'を使わないのはなぜですか? –