Ruby on rails Rails-将路由匹配到命名空间控制器

Ruby on rails Rails-将路由匹配到命名空间控制器,ruby-on-rails,Ruby On Rails,我如何将其指向我的:admin命名空间?我必须在名称空间声明中定义匹配吗?在routes.rb中这可能会起作用 match '/submit_expense/:id' => 'expenses#submit_expense', :as => 'submit_expense' 在使用控制器生成器时,您可以使用/like: namespace :admin do match '/submit_expense/:id' => 'expenses#submit_expense',

我如何将其指向我的:admin命名空间?我必须在名称空间声明中定义匹配吗?

routes.rb
中这可能会起作用

match '/submit_expense/:id' => 'expenses#submit_expense', :as => 'submit_expense'

在使用控制器生成器时,您可以使用/like:

namespace :admin do
  match '/submit_expense/:id' => 'expenses#submit_expense', :as => 'submit_expense'
end

您也可以像这样使用
to:
指令:

match '/submit_expense/:id' => 'admin/expenses#submit_expense', :as => 'submit_expense'

我已经读过了,我试图确定的是将自定义方法与命名空间匹配的正确方法,我已经将match语句移动到了我的命名空间声明中,并且它可以工作。但这是正确的方法吗?哦!嗯,是的,我想你必须把你的匹配声明放在名称空间中。我很确定这将生成路径:/admin/submit\u,而不仅仅是普通的old/submit_expense@ChrisO“沙利文,你说得对,的确如此。我正在寻找一种指向带名称空间的控制器,但不影响路径的方法。如果要引用带名称空间的控制器,可以使用'module:'admin'。在这里了解更多信息
  get '/submit_expense/:id', to: 'admin/expenses#submit_expense'