2016-08-17 3 views
0

私はhas_manyというプロジェクトを持っています。タスクには_form.html.erbというファイルがあり、プロジェクトのshow.html.erbファイルに表示したいと思っています。他のコントローラまたはモデルから部分的に表示

しかし、毎回私はこれを試してみてください、私は次のエラーを取得しています:

undefined local variable or method `task'

私は部分的にレンダリングする<%= render 'tasks/form' %>を使用しています。

また、

<% @tasks.each do |task| %> 
<%= listing.task.name %> 
<% end %> 

は、現在のページに関連付けられているすべてのリストを表示するためにトリックを行うだろうか?

+0

あなたは完全なスタックトレースを提供することができます。 – Dharam

+1

投稿ごとに1つの質問を貼ってください。 Stack OverflowはQ&A形式のサイトであり、複数の質問を1つの記事の下に置くことで、将来の読者が探している回答を見つけることができなくなります。 – MarsAtomic

+1

私は、あなたの '_task'部分が実際の仕事をローカル変数として渡すことを期待していると言いたいと思います。あなたは次のようにすることができます:' <%= render 'tasks/form' :task =>(@task || Task.new)%> 'しかし、私はちょうど推測している(stacktraceやあなたの部分的なテンプレートのコードを見ていないと仮定すると)。 –

答えて

0

部分的にローカルtaskを渡すためにあなたが欠落しているようです。

これは動作するはずです:

<%= render partial: 'tasks/form', locals: { task: @task } %> 
関連する問題