【问题标题】:How to default the option list when editing in rails在rails中编辑时如何默认选项列表
【发布时间】:2012-11-15 03:46:49
【问题描述】:

我有一个标准的 Rails 控制器,我想对其进行编辑并能够保持当前选项列表处于选中状态。

所以我有一个用户填写的表格。
例子: 名称(文本字段)& 状态(选项列表)

当用户单击编辑按钮时,它会转到生成的编辑页面。用户先前已经选择了名称和状态。 名称文本字段返回填充,但状态默认为列表中的第一个。
如何让控制器中的编辑方法将用户选择的状态传递给编辑视图页面?

【问题讨论】:

  • 您可以粘贴包含表单的部分代码吗?
  • 您确定状态列正在保存到数据库中吗?

标签: ruby-on-rails ruby ruby-on-rails-3


【解决方案1】:

我不确定您是如何定义选项列表的,但使用 options_from_collection_for_select 并将 proc 传递给它以有条件地选择您的选项将起作用。

【讨论】:

    【解决方案2】:

    您可能无法批量分配与州下拉列表关联的字段。确保在模型中正确设置了该属性上的attr_accessible,否则在使用newcreateattributes=update_attributes 等方法时,您将忽略该属性分配。

    如果不是这种情况,那么您的选项中的字符串键和模型中的整数值之间可能存在冲突。请记住,2"2" 不同,因此您应该确定下拉菜单的键与相关类型匹配。

    【讨论】:

      【解决方案3】:

      这应该可以完成工作

      <%= f.select :project_id, @list, :selected => "user_selected_value"] %>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-03-14
        • 1970-01-01
        • 2011-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多