在使用Ruby on Rails 3 select_tag时遇到麻烦



我试图硬编码一个简单的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">&lt;option&gt;Freshman&lt;/option&gt;</select>

看这里的select_tag和options_for_select

相关内容

  • 没有找到相关文章

最新更新