Module: Recourse::Helpers::Comboboxes

Included in:
Recourse::Helpers
Defined in:
lib/recourse/helpers/comboboxes.rb

Overview

The menu a foreign key offers when its label is too long to be typed.

Instance Method Summary collapse

Instance Method Details

#combobox(form, column, association) ⇒ Object

A combobox of labels. The query fetches the two columns the menu shows and nothing else, and the errors are its own work: field_error_proc only ever sees the tags a form builder drew, and this is a partial.



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/recourse/helpers/comboboxes.rb', line 8

def combobox(form, column, association)
  messages = errors_on column
  label = association.klass.recourse_label
  render 'recourses/combobox', name: form.field_name(column),
                               id: form.field_id(column),
                               invalid: messages.any?,
                               feedback: messages.to_sentence.upcase_first.presence,
                               label: label.to_s,
                               placeholder: combobox_placeholder(column, association),
                               required: required?(resource_model, column),
                               recourses: combobox_options(association.klass, label)
end