0

我有两个控制器分组在admin命名空间下,如下所示:

namespace :admin do
  resources :projects
  get "profile", to: "users#edit"
  post "profile", to: "users#create"
end

在 a form_forfor aresource中,它可以正常工作,如文档中所述

form_for [:admin, @project]

但是当涉及到像上面这样的命名路由时admin/profile,我不知道在form_for. 如果我只是使用form_for(@user),则该edit操作可以正常工作并且表单可以正确显示,但是在提交时出现以下错误:

No route matches [PATCH] "/2"

当我尝试form_for [:admin, @user]时,表单不显示抱怨:

undefined method `admin_user_path'

应该如何form_for be constructed in a named route under a namespace?

4

1 回答 1

2

尝试这个:

form_for(@user, url: admin_profile_path) do |f|

运行rake routes以列出所有路线。

于 2013-12-26T01:48:04.977 回答