加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – ActiveAdmin:选择下拉列表默认为开发中的当前

发布时间:2020-12-16 22:34:19 所属栏目:百科 来源:网络整理
导读:我有以下ActiveAdmin表单: form do |f| f.inputs "Timesheet Details" do f.input :jobs_assigned_worker,:label = "Worker",as: :select,collection: Worker.all f.input :worked_time_hours,:label = "Worked Time (Hours)" f.input :worked_time_mins,:l
我有以下ActiveAdmin表单:
form do |f|
    f.inputs "Timesheet Details" do
        f.input :jobs_assigned_worker,:label => "Worker",as: :select,collection: Worker.all
        f.input :worked_time_hours,:label => "Worked Time (Hours)"
        f.input :worked_time_mins,:label => "Worked Time (Minutes)"
        f.input :driving_time_hours,:label => "Driving Time (Hours)"
        f.input :driving_time_mins,:label => "Driving Time (Minutes)"
        f.input :spent_dollars,:label => "Extra Money Spent"
    end
    f.actions
end

当我在编辑视图中使用此表单时,选择下拉菜单将自动默认为当前值.然而,在生产中,下拉菜单由于某种原因默认为顶部的空白值(为什么空白值呢?).

编辑

问题似乎是ActiveAdmin不明白关联,并且默认情况下无法选择关联的对象.我需要弄清楚如何为该关联编写f.input.表单用于“时间表”.时间表has_many JobsAssignedWorkers和每个JobsAssignedWorker都有一个Worker.

解决方法

如果要包括空值:
f.input :jobs_assigned_worker,label: 'Worker',collection: -> { Worker.pluck(:name) },include_blank: true

如果不想包括空值:

f.input :jobs_assigned_worker,include_blank: false

如果你想拥有空值,但不想让它作为一个选择:

f.input :jobs_assigned_worker,include_blank: true,allow_blank: false

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读