我觉得我在这里错过了一些简单的东西。我正在使用带有对象的form_for帮助器。我指定了url,格式和html方法。但是,在渲染时,action属性中的url不会选择格式。这是我的代码:
=form_for(@site, url: compile_documents_path(@site), format: :csv, html: { method: :post}) do |f|
我的控制器设置为响应csv格式,我只是在站点对象上调用to_csv方法。
关于为什么它没有按预期工作的任何想法。
答案 0 :(得分:23)
未经测试,但我认为格式部分应该进入网址助手:
=form_for(@site, url: compile_documents_path(@site, format: :csv)) do |f|
另外:我认为您不必指定method: :post
部分,因为form_for
将决定是否应使用PUT
或POST
,具体取决于@网站是新记录或现有记录。