我有两种模式:
class WorkPlan < ActiveRecord::Base
has_many :work_plan_tasks
end
class WorkPlanTask < ActiveRecord::Base
belongs_to :work_plan
end
我的表单和索引操作都按照预期与关联一起工作。
我正在尝试修改工作计划的show view,以便显示属于相关工作计划的工作计划任务。
我在显示视图的底部添加了下面的代码,用于工作计划,但它不断爆炸,我花了太多时间修补代码。
非常感谢任何帮助。
<% @work_plan.work_plan_task in @work_plan_task %>
<%= work_plan_task.task_name %?
<% end %>
答案 0 :(得分:3)
通常不会在Rails视图中循环遍历项目。试试这个:
<% @work_plan.work_plan_tasks.each do |work_plan_task| %>
<%= work_plan_task.task_name %>
<% end %>
each
调用符合您的预期:遍历数组,将项目通过work_plan_task
传递到循环中。
如果您想按照编写它的方式进行操作,则可以使用语法。
<% for work_plan_task in @work_plan.work_plan_tasks %>
<%= work_plan_task.task_name %>
<% end %>
...虽然老实说我甚至都不知道这是否有用,但我从未尝试过。 : - )
最后,请注意@work_plan_task
和work_plan_task
是不同的变量。