ユーザーのユーザー属性を見つけ、user_idsのハッシュを返します。 各レコードにもuser_idの外部キーがありますアクティブレコードクエリは、多くの関係私の関係テーブルで</p> <p>私はフィールドを持っているがあり、各
:refereeフィールドにcurrent_user.idが含まれているレコードを見つけ、それぞれの外部キーフィールドからuser_idを選択します。
refs = Relationship.where(:referee => current_user.id).select("user_id").all
これは私が今、アレイ内の各IDのユーザー属性を見つけたい
[#<Relationship user_id: 16>, #<Relationship user_id: 17>]
、私が試したが、これまでのところ、たとえば、失敗した、このような配列になり:
User.where(:id => @refs_user_id).each do |user|
user.name
end
アクティブレコードで見て/いくつかの読書をしたクエリ、スコープなどを進めたが、かなり、ここで必要なのものを把握するように見えることはできません。どんな提案も大変感謝しています。ありがとう!
nil.mapの評価中にnilオブジェクトエラーが発生しました。 –
'@refs_user_id'があなたの' Relationship.where(...) 'クエリの結果を保持していると仮定しました。本当に 'refs'の場合、' refs.map(&:user_id) 'を使用してください –
ありがとうDylan、アクティブなレコードのクエリに関する私の理解はかなり基本的です。これは、このようなクエリについての適切な方法ですか? –