Я создал раскрывающийся список для сотрудников.Получение значения объекта в коллекции select
- Что я хочу?
Я хочу выбрать полное имя для каждого из них.
- Тип формы:
Я использую simple_form. я на самом деле:
= f.input :person_id, label: "Employee", collection: @employee, prompt: "Select employee"
Результат (я знаю, что есть ссылка):
Перед тем, как использовать collection_select, но simple_form не поддерживает проверку для этого типа коллекции. Код для collection_select. В этом раскрывающемся списке отображается полное полное имя.
= f.collection_select :person_id, @employee, :id, :fullName, {prompt: "Wybierz pracownika"}, {class: "form-control"}
Обновление: FULLNAME представляет собой метод в модели person.rb.
def fullName
"#{first_name} #{last_name}"
end
Работник объекта.
@employee = Person.where.not(type: "Client")
Когда я использую ваш код, возникает синтаксическая ошибка: неожиданный '|', ожидающий ')' –
ответ отредактированный попробуйте прямо сейчас! –
Правильно работать: f.select: person_id, options_for_select (@ employees.map {| e | [e.fullName, e.id]}), {: prompt => "Wybierz pracownika",: required => true} –