我正在制作“用户设置表单”,并坚持使用HAML:
= form_tag('/')
- [1,2,3].each do |i|
= check_box_tag "accept#{i}"
= submit_tag这会导致“语法错误,意外的kENSURE,期望的$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次提交按钮。
任何关于修复的想法都将不胜感激。谢谢!
发布于 2010-08-14 22:32:56
您应该将一个块传递给form_tag。我认为你想要:
Rails 2.x:
- form_tag('/') do
- [1, 2, 3].each do |i|
= check_box_tag "accept#{i}"
= submit_tagRails 3+:
= form_tag('/') do
- [1, 2, 3].each do |i|
= check_box_tag "accept#{i}"
= submit_taghttps://stackoverflow.com/questions/3483592
复制相似问题