在表单中,我想要一个值从1到30的选择框,并将值存储在db列中。这个有帮手吗?我查看了select_tag,但没有找到一个好的解决方案。
有人能帮帮忙吗?
发布于 2011-11-18 21:38:25
当您需要一个填充了非数据库数据的下拉选择框时,请使用select_tag
erb:
<%= f.select "make_num", 1..30 %>haml:
= f.select "make_num", 1..50或者(更好的MVC)
在控制器中创建my_range = 1..30
my_range = 1..30 然后在您的视图中:
erb:
<%= f.select "make_num", my_range %>haml:
= f.select "make_num", my_range或者(best MVC)
使用克莱姆的解决方案:)
发布于 2011-11-18 23:45:31
我通常在我的模型中设置可接受的值范围。
# app/models/widget.rb
class Widget < ActiveRecord::Base
RATING_VALUES = (1..10)
end然后我可以在视图中引用它:
# app/views/widgets/_form.html.erb
<%= form_for @widget do |f|
<fieldset>
<%= f.label :rating %>
<%= f.select :rating, Widget::RATING_VALUES %>
</fieldset>
<!-- etc -->
<% end %>https://stackoverflow.com/questions/8183106
复制相似问题