【问题标题】:Having trouble populating a select box in rails for editing?在 Rails 中填充选择框以进行编辑时遇到问题?
【发布时间】:2009-05-20 08:31:09
【问题描述】:

我有一个已拆分为部分的表单,因此我可以在新视图和编辑视图中使用它。我有几个从模型中生成的静态数组填充的下拉列表(选择)。

在位置模型中:

def open_close_times
@times = '','12:00 AM', '12:30 AM', '1:00 AM', '1:30 AM', '2:00 AM', '2:30 AM', '3:00 AM', '3:30 AM', 
         '4:00 AM', '4:30 AM', '5:00 AM', '5:30 AM', '6:00 AM', '6:30 AM', '7:00 AM', '7:30 AM', 
         '8:00 AM', '8:30 AM', '9:00 AM', '9:30 AM', '10:00 AM', '10:30 AM', '11:00 AM', '11:30 AM', 
         '12:00 PM', '12:30 PM', '1:00 PM', '1:30 PM', '2:00 PM', '2:30 PM', '3:00 PM', '3:30 PM',
         '4:00 PM', '4:30 PM', '5:00 PM', '5:30 PM', '6:00 PM', '6:30 PM', '7:00 PM', '7:30 PM',
         '8:00 PM', '8:30 PM', '9:00 PM', '9:30 PM', '10:00 PM', '10:30 PM', '11:00 PM', '11:30 PM'

结束

所以我的表单中的选择如下所示:

<label for="hours_sunday_open">Open:</label><%= f.select(:hours_sunday_open, @location.open_close_times) %>

我这样称呼部分:

<%= render :partial => "form", :locals =>{ :f => f} %>

如何获得选择以标记从编辑控制器返回的“选定”信息?

【问题讨论】:

    标签: ruby-on-rails ruby select


    【解决方案1】:

    Rails 会自动将与控制器返回的项目匹配的项目标记为“已选择”。

    因此,如果您的编辑控制器返回“1:00”,如果它出现在您的选择列表中,它将被选中。

    【讨论】:

    • 对我来说似乎不是这样...所有选择都是空白...如果我将它们更改为 text_fields 那么我会看到正确的信息吗?
    • 发现问题...我将数据作为时间字段保存在数据库中,但是选择数组中的 AM、PM 不起作用。更改数据库以将时间存储为 VARCHAR 现在所有选择都是自动填充的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-05
    • 1970-01-01
    • 2022-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多