HAML:form_tag困境(缩进?) [英] HAML: form_tag dilemma (indentation?)
本文介绍了HAML:form_tag困境(缩进?)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在制作用户设置表单",并坚持使用HAML:
I'm making "user settings form", and stuck with HAML:
= form_tag('/')
- [1,2,3].each do |i|
= check_box_tag "accept#{i}"
= submit_tag
这将导致语法错误,意外的kENSURE,期望$ end".
This results in "syntax error, unexpected kENSURE, expecting $end".
有效变体是
= form_tag('/')
- [1,2,3].each do |i|
= check_box_tag "accept#{i}"
= submit_tag
结果
<input id="accept1" name="accept1" type="checkbox" value="1" />
<input name="commit" type="submit" value="Save changes" />
<input id="accept2" name="accept2" type="checkbox" value="1" />
<input name="commit" type="submit" value="Save changes" />
<input id="accept3" name="accept3" type="checkbox" value="1" />
<input name="commit" type="submit" value="Save changes" />
<form action="/" method="post"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="tuniieYp9hgvGBMaYDjK2l3Mgjpxo9F1LPzqEF4ykHg=" /></div>
错误:在表单标签外部进行控制,3次提交按钮.
Wrong: controls outside form tag, 3 times submit button.
任何有关修复的想法将不胜感激.谢谢!
Any ideas on fixing would be appreciated. Thank you!
推荐答案
您应该将一个块传递给form_tag.我想你想要
You should be passing a block to form_tag. I think you want:
Rails 2.x:
Rails 2.x:
- form_tag('/') do
- [1, 2, 3].each do |i|
= check_box_tag "accept#{i}"
= submit_tag
3级以上的滑轨:
= form_tag('/') do
- [1, 2, 3].each do |i|
= check_box_tag "accept#{i}"
= submit_tag
这篇关于HAML:form_tag困境(缩进?)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文