I ein Formelement haben, das ausgewählt ist unter Verwendung eines Mehrfachauswahl-Eingang zu machen, wie soGewählte Mehrfachauswahl sorgt für zusätzliche „“, um Array von Werten
<%= f.collection_select :application_regions, ApplicationRegion.all, :identifier, :name, {}, { class: 'chosen_select', multiple: true } %>
Der Wert ist ein Array ApplicationRegions.all mit einem einzigen Wert
[#<ApplicationRegion:0x007fc61aeb3100 @identifier="FOO", @name="BAR">]
ich Initialisierung wie so gewählt:
$(document).on 'turbolinks:load', ->
$('.chosen-container').remove()
$('.chosen_select').chosen
allow_single_deselect: true
width: '100%'
Der Eingang zeigt korrekt eine Liste mit einer einzigen Option an BAR
, aber das Ausgangsarray ist ["", "BAR"]
- wo kommt das extra ""
her und wie kann ich es loswerden?
Ich hatte gedacht, dass die allow_single_deselect: true
Entnahme darum kümmern würde, aber das Verhalten bleibt (ich habe ein spring stop
nur um sicher zu sein)
Wissen Sie über ': include_blank => false'? Hast du die Dokumentation zu 'f.collection_select' gelesen? –
Es gibt keinen leeren Wert in der generierten Auswahleingabe, ': include_blank' löst das Problem nicht. –