Rails 3.2.3を使用していますが、クエリについて質問があります。
名前付きスコープの代わりにarelを使用する方が有利であることを読みました。
基本的に私のアプリでは、ユーザーがログインしたときに、彼が作成した製品を表示してもらいたいと思います。したがって、コントローラにインデックスを付ける代わりに:
products=Product.find(:all)
私は次のようなものを探していました
products=Product.find(:all, :conditions....)
問題は、私のユーザーモデルと製品モデルにはHABTM関係があり(実際にはそうである必要があります)、によって挿入された製品のみcurrent_user
が表示されるようにこれらのテーブルを結合する方法がわかりません(挿入は正しく機能しています)
製品モデルに検索メソッドを追加する必要がありますか?:conditions
または、これはインデックスコントローラーを渡すことで実現できますか?
基本的にロジックは次のとおりです。
->すべての製品を入手
-> products_users HABTMテーブルと内部結合し、products_users.user_id=current_user.idであるすべての製品を取得します。結果を返します。
ここで何かが足りないかどうかわかりません...これをコーディングするためのヒントはありますか?ちょっと混乱しています。