2009-10-05 6 views
0

Mon modèle de question répertorie les réponses et permet à quelqu'un d'ajouter une nouvelle réponse à une question.Arguments appropriés pour initialiser un modèle dans une vue?

Mais je ne sais pas où et comment initialiser une nouvelle réponse pour cette ligne:

<%= link_to 'New answer', new_question_answer_path(@question, Answer.new) %> 

du contexte ci-dessous:

<p> 
    <b>Body:</b> 
    <%=h @question.body %> 
</p> 

<h1>Listing answers</h1> 

<table> 
    <tr> 
    <th>Body</th> 
    </tr> 

<% @question.answers.each do |answer| %> 
    <tr> 
    <td><%=h answer.body %></td> 
    <td><%= link_to 'Show', answer %></td> 
    <td><%= link_to 'Edit', edit_answer_path(answer) %></td> 
    <td><%= link_to 'Destroy', answer, :confirm => 'Are you sure?', :method => :delete %></td> 
    </tr> 
<% end %> 
</table> 

<br /> 

<%= link_to 'New answer', new_question_answer_path(@question, Answer.new) %> 



<%= link_to 'Edit', edit_question_path(@question) %> | 
<%= link_to 'Back', questions_path %> 

Si j'initialiser la nouvelle réponse comme celui-ci :

<%= link_to 'New answer', new_question_answer_path(@question, Answer.new) %> 

e L'URL de la page suivante est déformé par un appel d'inspection à la nouvelle réponse.

Répondre

3

Essayez ceci:

<%= link_to 'New answer', new_question_answer_path(@question) %> 
+0

correcte. @ answer = Answer.new appartient au contrôleur sous la nouvelle action. – hgmnz

Questions connexes