1

RailsアプリケーションにUserとPostのスキャフォールドがあります。ユーザーに関連付けられているすべての投稿を取得したかったのです。たとえば、次のようなことができるようにしたいと思います。

localhost:3000 / users / 1 / posts

そして、user_id=1のすべての投稿が表示されるはずです。特定のユーザーのレールコンソールからすべての投稿を取得する方法を知っています。上記の例のようなことをどうやって達成できるのかと思っていました。ユーザーコントローラーに別のメソッドを追加する必要がありますか?

4

3 に答える 3

7

新しいアクションを追加せずにそれを行うことができます。このような:

class PostsController < ApplicationController
  def index
    @user = User.find(params[:user_id])
    @posts = @user.posts
  end
end
于 2012-05-06T16:15:55.980 に答える
3

もう1行の例は次のとおりです。これをインデックスに追加してください

@posts = User.find(params[:user_id]).posts
于 2015-09-08T00:56:28.297 に答える
1

私は役立つかもしれない関連する質問への長い答えを書きました:

https://stackoverflow.com/a/17911920/321583

于 2013-07-28T19:22:29.207 に答える