我认为这是:
form_for [:support, @thread, @reply], url: support_thread_replies_path do |f|
这是我的routes.rb
:
namespace :support do
resources :threads do
resources :replies
end
end
这不起作用:
路由错误
没有路线匹配
{:action=>"new", :controller=>"support/replies"}
如果我从url:
中删除form_for
密钥,当表单帮助程序尝试调用未定义的路径帮助程序方法时,我只得到NoMethodError
:
即使我在示例视图代码中从数组的开头删除了:support
符号,我也得到了相同的路由错误(使用:support
建议在此处回答另一个类似的问题)< / p>
答案 0 :(得分:5)
将Thread
的实例作为路径助手中的第一个参数传递:
support_thread_replies_path(@thread)
这样Rails知道你正在创建一个新的回复线程。
我相信你应该能够在没有:url
密钥或路径助手的情况下做到这一点。