1
2つの.eachを同じビュー上に表示することは可能ですか?彼らはさまざまな検索をしていますか?Rails:同じビューで2つの異なるdoループを持つことは可能ですか?
たとえば、特定の1人のユーザーが投稿したすべての投稿を表示する場合は、私は、ユーザーのコントローラで、次のアクションを持っているでしょう:
def show
@user = User.find(params[:id])
@posts = @user.posts
end
は、次にビューに私が持っているでしょう:
- @posts.each do |post|
=post.title
をそれから私は、同じビュー上の他のユーザーによって投稿を表示したい場合。特定のユーザーの投稿を検索するためだけに、上記の方法を使用しないでください。
私は新しいアクションを作成しますか?次のような 何か:
- @posts.each do |post|
=post.title
どのように私はこれを達成するであろう:
def showAll
@user = User.find(params[:id])
@posts = Post.where(:attribute => value).order("created_at DESC")
end
そして、バックビューページで私はこの1つのようなSHOWALLアクションであることを別のeach.doを持っているでしょうか?これはアクションを使用する正しい方法ですか?
'@posts =(@user == CURRENT_USER)ビューでそれらをループ? @ user.posts:Post.where(:attribute => value).order( "created_at DESC")あなたの表示アクションでこれを試してください –
おそらく、データを表示したいユーザーには、ある種の接続があります。個々のユーザーを1行ずつ見つけ出すのではなく、最初に共通のリンク(例:User.where(something:true))でユーザーを探し、それをループします。 – bkunzi01