40

私はQuestionControllerを持っています。app/views/ question /でテンプレートとパーシャルを使用してレンダリングする必要があるアクションを持つAnotherQuestionControllerがあります。これは可能ですか?あるべきだと思われます。

私はもう試した

render :template => "question/answer"

しかし、answer.html.erbにはパーシャルが含まれており、次のようなエラーが発生します

ビューパスにテンプレートanother_question/_my_partial.erbがありません」

では、Railsに「AnotherQuestionControllerをQuestionControllerのように扱い、app / views / questionでビューとパーシャルを探す」ように指示する方法はありますか?または、app / views / another_questionを作成する必要があります-これは重複を引き起こします(これはRailsの方法ではありません)。

ありがとう

4

4 に答える 4

60

テンプレートレンダリングは実際に機能するはずです

 render :template => "question/answer"

あなたが抱えていた問題は、パーシャルが間違った場所を探していることです。修正は簡単です。共有テンプレートでパーシャルを絶対にするだけです。たとえば、question/answer.html.erbには

<%= render :partial => 'question/some_partial' %>

通常ではなく

<%= render :partial => 'some_partial' %> 
于 2009-06-18T14:58:13.117 に答える
14

あなたはそれを達成することができます:

render 'question/answer'
于 2009-06-18T15:13:52.523 に答える
-1

この質問への回答でここで言及した inherit_views プラグイン ( http://github.com/ianwhite/inherit_views/tree/master ) を試すことができます。

于 2009-06-18T15:07:14.143 に答える