c/C++からのRuby/Railsの新種で、私のベビー・ステップをやっています。 私は次の問題に対する最も洗練された解決策を見つけようとしています。 テーブルAは、テーブルBへの外部キー(b_idと呼ぶ)を持ち、テーブルBは、名前フィールドとプライマリ(ID)フィールドを持っています。アクティブなレコード/ Ruby on Railsの別の検索のために複数のオブジェクトを取得する
いくつかの基準に基づいて、Aからオブジェクトのリストを取得したい場合は、このリストのb_idを使用してテーブルBにアクセスし、名前(名前フィールド)を取得します。
私は失敗する多くのことを試みてきました。私はここで何か根本的なものが欠けていると思う。
curr_names = B.where(id: curr_users.first().b_id) # ok
私はcurr_usersを反復して構築することができます...
curr_names = B.where(id: curr_users.all().b_id) # fails, doesn't recognize b_id
以下の作品が、それは、単一のユーザーを処理します。
curr_users = A.Where(condition)
curr_names = B.where(id: curr_users.b_id) # fails
も試み
を: 私が試しました外部キーの配列とそれをBにアクセスするために使用しますが、これを行うにはよりエレガントな方法が必要であるようです。 私はここで何が欠けていますか?
乾杯。簡単にするために
部門に部門をベースとすることができ、私が持っているものに似ている、従業員へのFKを持っています。 SQLite3 :: SQLException:列がありません:employees.days:SELECT name FROM "departments" WHERE "employees"。 "days" – user1115660
エラーメッセージのSQLに ' JOIN claseが見つからないので大丈夫です。 'include'節を追加することを忘れましたか? –