嵌套路由,传递:user_id

时间:2014-11-08 20:23:19

标签: ruby-on-rails nested-routes

我想创建新任务按钮,该按钮将重定向到/users/:user_id/tasks/new
路线:

  devise_for :users
  resources :users do
    resources :tasks, shallow: true
  end

任务控制器:

  def new
    @task = Task.new
  end

查看:

<%= link_to "New Task", new_user_task_path(@user) %> 

但它给了我 - No route matches {:action=>"new", :controller=>"tasks", :user_id=>nil} missing required keys: [:user_id]错误。

1 个答案:

答案 0 :(得分:0)

您希望new_user_task_path(@user)可能new_user_task_path(current_user)而不是@user。在这种情况下,nil为{{1}}。