使用简单的形式和pluck检索集合中的多个列

时间:2017-01-09 12:42:40

标签: ruby-on-rails ruby simple-form

这个想法是显示带复选框的记录集合,但我也希望为每条记录检索多个列。我知道pluck方法可以检索多个列,但是,简单的表单不会显示它们。所以我的代码看起来像:

<%= f.association :option, collection: @question.option.pluck(:lead, :description), as: :check_boxes %>

但在我看来,只显示:lead列?

1 个答案:

答案 0 :(得分:0)

经过一些试验/错误后,这给了我我想要的东西:

<%= f.association :option, collection: @scan_element.disk_element.option, label_method: :option_label, as: :check_boxes, include_hidden: false %>

并在Option模型中:

def option_label
  "#{self.value.to_s}  #{self.lead}: #{self.description}"
end

html返回:

<div class="form-group check_boxes optional scan_element_option"><label class="control-label check_boxes optional">Option</label><span class="checkbox"><label for="scan_element_option_id_19"><input class="check_boxes optional" type="checkbox" value="19" name="scan_element[option_id][]" id="scan_element_option_id_19" />0  zero_label: zero description</label></span>