Rails新手在这里,我很难过。在 Rails 中,我有一个包含多个任务的项目模型。假设我有一个显示 5 个项目的视图,每个项目都有一个“新任务”链接,以便用户可以向任何一个项目添加新任务。所以:
项目 1
新任务
项目 2
新任务等
如果新任务链接看起来像
link_to '新任务', new_task_path
告诉任务控制器上的“新”操作单击哪个链接的最佳方法是什么?我想我必须将 project_id 传递给新任务,但我无法解决如何去做。
一如既往的帮助!
Rails新手在这里,我很难过。在 Rails 中,我有一个包含多个任务的项目模型。假设我有一个显示 5 个项目的视图,每个项目都有一个“新任务”链接,以便用户可以向任何一个项目添加新任务。所以:
项目 1
新任务
项目 2
新任务等
如果新任务链接看起来像
link_to '新任务', new_task_path
告诉任务控制器上的“新”操作单击哪个链接的最佳方法是什么?我想我必须将 project_id 传递给新任务,但我无法解决如何去做。
一如既往的帮助!
取决于您的路线是如何定义的,但是如果将任务定义为项目的子资源(如下所示),那么它非常简单。
resources :projects do
resources :tasks
end
这将生成如下路线:
new_project_task GET /projects/:project_id/tasks/new(.:format) {:controller=>"tasks", :action=>"new"}
然后您可以通过以下方式链接到它:
link_to 'New Task', new_project_task_path(@project)