我想创建新任务按钮,该按钮将重定向到/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]
错误。
答案 0 :(得分:0)
您希望new_user_task_path(@user)
可能new_user_task_path(current_user)
而不是@user
。在这种情况下,nil
为{{1}}。