私は3つのテーブル - ユーザー、従業員、連絡先を持っています。 従業員と連絡先には、関連付けられたユーザーを指す外部キーがあります。私は、ユーザーインデックスビューで従業員の名前や連絡先の名前をリストアップしたいユーザー ユーザーは多くの従業員を持って、連絡先RoRバックワードレコードを見つける方法
しかし、: belongs_toの従業員:ユーザー 問い合わせbelongs_toの。
find_by_sql文を使用する必要がありますか?
おかげで、 デイブ
私は3つのテーブル - ユーザー、従業員、連絡先を持っています。 従業員と連絡先には、関連付けられたユーザーを指す外部キーがあります。私は、ユーザーインデックスビューで従業員の名前や連絡先の名前をリストアップしたいユーザー ユーザーは多くの従業員を持って、連絡先RoRバックワードレコードを見つける方法
しかし、: belongs_toの従業員:ユーザー 問い合わせbelongs_toの。
find_by_sql文を使用する必要がありますか?
おかげで、 デイブ
は、あなたは、あなたが@user.employee.name
か@user.contact.name
を行うことができ、従業員との接触のためにあなたのUserクラスにhas_one
関連付けを追加できるようにbelongs_to
団体は、すでに設定しています。
これには間違いなくfind_by_sql
は必要ありません。あなたのインデックスビューで
、
<table>
<% @users.each do |user| %>
<tr>
<td><%= user.name %></td>
<td><%= user.employees.map{ |empl| empl.name }.join(", ") %></td>
<td><%= user.contacts.map{ |contact| contact.name }.join(", ") %></td>
</tr>
<% end %>
</table>
だけ下側は、それはすべてのユーザーの従業員と利用者のためのループ内のすべてのユーザーの連絡先のためのクエリを実行しますです。ページがかなり速く読み込まれた場合は、それが明確なコードなので、上記のようにコードを記述します。