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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |