2012-03-10 9 views
1

私はエラーを返し<%= render @posts %>でコレクションの部分をレンダリングしようとしています:私は、私は<%= render :partial => 'post', :collection => @posts %>レール3

を使用している場合、それは動作しますが

Missing partial posts/post with {:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]}

post変数(ポストから)を使用する同じフォルダ内の_post.html.erb

なぜ前者の例でコレクションnを部分的にレンダリングするかしかし、後者の例はうまくいきますか?

EDIT:私はpostsビューフォルダ内にある必要がありますので、あなたの部分、Railsの3.2.1

答えて

3

あなたのオブジェクトのto_partial_pathのデフォルトは常にクラスのビューフォルダの下にスコープさを使用してい指定する必要があります。

フォームを使用すると、render :partial => 'post'は現在使用しているコントローラーのフォルダーを探します。

あなたが見ている動作を説明する、PostsControllerビューフォルダで作業していないと思われます。 postsビューフォルダで作業している場合は、さらに診断するのに役立つ詳細情報を提供できる場合は、別のものが必要です。

+0

ありがとう!私は別のコントローラのビューフォルダにあります、私はそれが部分的にそのように見えることを認識していませんでした。 – fridgerator