我试图硬编码一个简单的html select_tag,但我的选项值不呈现。我有一个学生表,希望他们选择一个班级组:大一,大二,大三,大四。下面是我的form.html.erb代码,我只尝试了Freshman:
Class Year <%= select_tag "class", "<option>Freshman</option>" %>
有什么建议吗?由于
选项部分被rails 3净化了。rails 2似乎没有做到这一点,所以您可能正在查看为旧版本rails编写的文档。这就是我如何得到的选项标签呈现与您的示例
<%= select_tag "class", raw("<option>Freshman</option>") %>
注意不要随意使用。raw
告诉rails在呈现HTML时保留任何字符串。如果您呈现的是用户可以修改的动态内容(此处不是这种情况),那么您将容易受到SQL注入攻击。
顺便说一句,我发现这里有什么问题的方法是使用firebug (Firefox插件)并查看渲染的页面。您可以右键单击页面元素和inspect element
来查看html。你也可以用任何浏览器的"查看源代码"来做到这一点,但我发现这只是更方便一点。这是html在原始代码中的样子:
<select id="class" name="class"><option>Freshman</option></select>
看这里的select_tag和options_for_select