在Rails中,你如何指示form_tag提交到哪里?
问题的原因是在Rails中,form_tag方法用于创建一个HTML表单,并指定表单提交的目标地址。但是,如何指定目标地址并没有在文档中明确说明。
解决方法是通过在form_tag方法中传递一个参数来指定目标地址。例如,可以使用form_tag('/posts')来指定表单提交到/posts地址。还可以使用form_tag('/posts/1', :method => :put)来指定表单提交到/posts/1地址,并使用PUT方法进行提交。如果需要支持文件上传,可以使用form_tag('/upload', :multipart => true)来指定目标地址,并设置enctype属性为multipart/form-data。
此外,在form_tag方法中还可以使用块来生成表单内容。例如,可以使用<% form_tag '/posts' do %>来指定表单提交到/posts地址,并在块中生成表单内容。
在文档中提到的<% end -%>中的"-%"是一种特殊的标记,用于在生成HTML代码时去除多余的空格和换行符。这可以使生成的HTML代码更加简洁。
通过查看stackoverflow上的链接,可以了解到"<% end -%>"和"<% end %>"之间的差异。"<% end -%>"会在生成HTML代码时去除多余的空格和换行符,而"<% end %>"则不会进行这种处理。
在Rails中使用form_tag方法创建HTML表单时,可以通过传递参数来指定表单提交的目标地址。还可以使用块来生成表单内容。在生成HTML代码时,可以使用"<% end -%>"来去除多余的空格和换行符。