'u seçin Çalışanlar için açılır liste oluşturdum.Koleksiyondaki bir nesnenin değerini alma
- Ne İstiyorum?
Her biri için tam Ad seçmek istiyorum. Formun
- Tür:
Ben simple_form kullanın. Aslında var:
= f.input :person_id, label: "Employee", collection: @employee, prompt: "Select employee"
Sonucu (Biliyorum, bu referanstır):
Ben collection_select kullanın, ancak simple_form toplama türüne ilişkin doğrulama desteklemiyor önce
. Collection_select için kod. Bu aşağı açılır liste, düzgün bir şekilde tam adı görüntüler.= f.collection_select :person_id, @employee, :id, :fullName, {prompt: "Wybierz pracownika"}, {class: "form-control"}
Güncelleme: fullName bir person.rb modelinde bir yöntemdir.
def fullName
"#{first_name} #{last_name}"
end
Nesne çalışanı.
@employee = Person.where.not(type: "Client")
Kodunuzu kullandığınızda bir sözdizimi hatası var: beklenmedik '|', bekliyor ')' –
yanıtı şimdi deneyin! –
Düzgün çalışma: f.select: person_id, options_for_select (@ employees.map {| e | [e.fullName, e.id]}), {: prompt => "Wybierz pracownika",: required => true} –