And*_*ndy 4 webforms ruby-on-rails prawn prawnto ruby-on-rails-3
环境:Rails 3.0.4和Ruby 1.9.2
我有以下表格:
<%= form_tag( {:action => 'show', :format => :pdf}, :method => :post) do %>
.. list of items ...
<%= submit_tag "Show", :onclick => "return checkAllFields(4);", :remote => true %>
<select name="format">
<option name="HTML">HTML</option>
<option name="PDF">PDF</option>
</select>)
<% end %>
Run Code Online (Sandbox Code Playgroud)
如您所见,我已在URL中将格式指定为"pdf".我想要的是根据select选项从控制器请求HTML或PDF响应.这两个查询都是单独工作的,即我可以渲染HTML或PDF但不能使其成为动态用户选择.(我甚至无法使用两个单独的硬编码按钮)
控制器代码很明显
def show
# code to locate items here
respond_to do |format|
format.html
format.pdf { render :layout => false }
prawnto :filename => "list.pdf", :prawn => { }
end
end
Run Code Online (Sandbox Code Playgroud)
我会尝试以下方法:
首先,您可能需要:format => :pdf从表单标记中删除硬编码(因为它可能会覆盖下面的选项).
接下来,确保select标记传递正确的值.你可以使用一个助手:
select_tag :format, options_for_select([["HTML", "html"], ["PDF", "pdf"]], "html")
Run Code Online (Sandbox Code Playgroud)
返回类似以下HTML的内容:
<select id='format' name='format'>
<option value='html' selected='selected'>HTML</option>
<option value='pdf'>PDF</option>
</select>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2586 次 |
| 最近记录: |