【问题标题】:Populate select box in rails form on edit page在编辑页面上以 rails 形式填充选择框
【发布时间】:2015-12-15 17:27:22
【问题描述】:

我有一个带有选择框的 rails 表单和我希望用户从中选择的各种选项。 _form.html.slim

.form-group
        = f.label :year
        = f.select :year, options_for_select(["one", "two", "three", "four"]),
         {class: 'form-control'}

用户选择一个选项并提交保存的选项,但是在编辑项目时,不会自动选择所选选项,而表单中的其他字段是......我做错了什么?

【问题讨论】:

  • 您能否包括表格的其余部分(或者,至少设置f 的那一行)?

标签: ruby-on-rails forms ruby-on-rails-4


【解决方案1】:

使用

指定选定的值
   = f.select :year, options_for_select(["one", "two", "three", "four"], selected: f.object.year), {class: 'form-control'}

【讨论】:

  • 谢谢,这可行,但“class: 'form-control'” 需要在 {} 内而不是 ()
  • 嗨,好点,现在改变了。如果您喜欢我的回答,请随时接受。
【解决方案2】:

您不需要 options_for_select。 select 方法将为您生成。

= f.select :year, ["one", "two", "three", "four"], {}, {:class => 'form-control'}

空的 {} 用于选择选项(例如,您可以输入 :include_blank 或 :prompt )。第二个选项哈希用于 html 选项,如 class

【讨论】:

  • 当你有静态选项时它不会。至少在我遇到同样麻烦的 Rails 4.2.11.3 和 Ruby 2.3.8 上没有。 selected 选项解决了这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-02-05
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 1970-01-01
  • 2018-07-19
  • 1970-01-01
相关资源
最近更新 更多