En essayant de créer un formulaire pour créer de nouveaux éléments sur une page d'index plutôt que sur la nouvelle vue, j'ai rencontré un problème étrange.Créer et afficher des éléments dans la vue de la réplique
Lors de la présentation du formulaire de création d'une nouvelle tâche dans le projet en cours, la variable @tasks contenant les tâches censées être affichées dans la liste ci-dessous semble être vide. Par conséquent, je reçois un "Aucune correspondance de route" depuis que l'objet im passant à IE. complete_project_task_path est nul. Lorsque vous supprimez le formulaire, tout fonctionne comme un charme.
Des idées pour lesquelles cela arrive?
<h1>Listing tasks</h1>
<%= form_for([@project, @project.tasks.build]) do |f| %>
<div id="new_quick_task">
<%= f.text_field :title, :value => 'Quickly add a new task' %>
<%= f.submit %>
</div>
<% end %>
<div id="task_list">
<% @tasks.each do |task| %>
<div class="task">
<div class="completed"><%= task.completed %></div>
<div class="complete_link"><%= link_to "Good", complete_project_task_path(@project, task) %></div>
<div class="title"><%= link_to task.title, project_task_path(@project, task) %></div>
</div>
<% end %>
</div> <!-- end task_list -->
Bien que cela fonctionnerait, vous copiez/re-mise en œuvre du code d'association que vous avez déjà avoir. La solution que j'offre ignorera le nouvel objet dans la liste et fait normalement exactement ce que vous voulez. – nathanvda