У меня есть этот выпадающий список select2 с множественным выбором, который отлично работает на стороне клиента, но публикует только последние сделанные пользователем выборки:
<select class="searchable-dropdown form-control form-control-md" name="payment_methods" id="payment-methods-send" multiple="multiple">
<%= options_for_select( (::Transaction::SEND_METHODS).collect{ |m| [t(m[:name]), m[:name].parameterize ]}, selected: params[:payment_method] ) %>
</select>
Он генерирует следующую разметку:
<select class="searchable-dropdown form-control form-control-md" name="payment_methods" id="payment-methods-receive" multiple="multiple">
<option value="coupons">Coupons</option>
<option value="paypal">Paypal</option>
<option value="skrill">Skrill</option>
<option value="revolut">Revolut</option>
<option value="zelle">Zelle</option>
<option value="transferwise">Transferwise</option>
<option value="swift-bank-transfer">SWIFT bank transfer</option>
<option value="european-bank-transfer">European bank transfer</option>
<option value="us-bank-transfer">US bank transfer</option>
<option value="uk-bank-transfer">UK bank transfer</option>
<option value="check">Check</option>
</select>
Я использовал это для инициализации элемента управления:
$( ".searchable-dropdown" ).select2({ theme: "bootstrap" });
После нескольких выборов и отправки формы я получаю это в параметрах:
"payment_methods":"paypal"
Paypal действительно выбран (последний), но также были и другие подборки.
Разве не предполагалось, что они будут отправлены через запятую?Я что-то не так делаю?