将字符串选择表单字段提交给服务器为整数

时间:2012-09-11 04:45:55

标签: html ruby-on-rails

我正在使用Rails 3.1.0。我在其中一个视图中有一个form_for块用于新操作。在表单中填写的大多数字段都作为整数存储在数据库中,但我想将它们作为选择输入中的字符串呈现给用户。例如,用户可能必须在选择输入中选择Bad,OK,Good,但我想将Bad存储为1,OK为2,Good为3.我想将字符串转换为整数浏览器。

推荐的方法是什么?

我考虑过隐藏整数字段,然后使用javascript将所选字符串转换为整数并填入隐藏的整数字段。这有什么意义还是有更简单的方法?

这不是Rails特定的问题,但我使用Rails并认为Rails可能有一个很好的方式来做我想做的事。

1 个答案:

答案 0 :(得分:1)

您应该在视图中的form_for中向选择助手发送一系列选项:

<%= f.select :quality, [['Bad', 1], ['OK', 2], ['Good', 3] %>

注意,您可能需要在控制器中执行一些操作,以便在保存模型之前将这些值从字符串转换为整数 - 只需检查一下。