Добавить пользовательский параметр, чтобы выбрать значение - PullRequest
0 голосов
/ 03 мая 2019

У меня есть выбор с опциями, заполненными из коллекции

<%= select('task', 'person_id', Person.where(:job_id => @job.id).order(:name).collect {|p| [p.name, p.id]}, {:include_blank => true}, :required => true)  %>

Я бы хотел добавить опцию «Не применимо» к этому выбору, но не знаю, как. У меня есть это, чтобы добавить пробел, и у меня также это установлено в обязательный. С обоими из них кто-то не может просто выбрать пробел У меня есть необходимый набор, потому что я хочу, чтобы мои сотрудники думали о выборе, который они выбрали.

Спасибо за помощь!

1 Ответ

1 голос
/ 03 мая 2019

Я бы создал вспомогательный метод примерно так

def person_options(options = {})
  options_for_select([["Not Applicable", ""]] + Person.where(:job_id => @job.id).order(:name).collect {|p| [p.name, p.id]}, options)
end

Затем вы можете вызвать его из erb следующим образом:

  <td><%= f.select :person_id, person_options(selected: @person. person_id, include_blank: true), {}, {style: 'width:auto'} %></td>

, возможно, потребуется настроить для вашего проекта

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...