控制器的子目录中的动作的路径是什么?

时间:2018-07-10 09:28:45

标签: ruby-on-rails routing

我在controllers文件夹内的文件夹中有控制器,以便得到以下shell结果:

ls app/controllers
...
users
users_controller.rb
videos_controller.rb
...

ls app/controllers/users
registrations_controller.rb  sessions_controller.rb

routes.rb中,我有:

post 'terms_accept', to: "users/registrations#terms_accept"

我不知道如何在terms_accept内部建立从表单到动作registrations_controller的路径。

可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

运行rake routes | grep terms_accept以获得prefix动作的路线terms_accept,当您获得prefix时,可以在表单上使用prefix_path

如果您要为操作明确定义路径prefix,则可以使用as关键字来命名路径

post '/terms_accept', to: "users/registrations#terms_accept", as: :terms_accept

然后,以<%= form_tag terms_accept_path do %>

的形式使用它

答案 1 :(得分:1)

在终端中运行rails routes命令,您将获得ur terms_accept操作的路径,它应该为user_terms_accept_path