57 votes

Ruby on Rails -- sélection multiple dans f.select

J'ai la boîte de sélection suivante dans mon formulaire :

Related Type: &nbsp; <%= f.select(:TYPE, [['Type A', 'Type A'],
                                  ['Type B', 'Type B'],
                                  ['Type C', 'Type C'],
                                  ['Type D', 'Type D'],
                                  ['Type E', 'Type E']
                                 ],{ :prompt => "Please select"}
                                 ) %>

Je souhaite permettre à l'utilisateur d'effectuer des sélections multiples et de modifier la taille de la boîte de sélection (5).

Comment faire pour le code ci-dessus ?

0voto

shilovk Points 70

Sélection multiple :

= form_with url: ui_dashboard_diagrams_path, method: :get, local: true do |f|
  .row
    .col.form-group
      = f.select :our_organization_ids,
                 options_for_select(OurOrganization.pluck(:name, :id), params[:our_organization_ids]),
                 { include_blank: '' },
                 { multiple: true, class: 'form-control form-select-multiple' }

javascript:
  $(document).ready(function() {
    $('.form-select-multiple').select2({
      allowClear: true,
      multiple: true
    });
  });

Ajouter un tableau de permis our_organization_ids à votre contrôleur :

private

def diagrams_params
  params.permit([our_organization_ids: []])
end

0voto

ysk Points 12

{ :prompt => "Veuillez sélectionner"}, { :multiple => true, :size => 5 } {} est important lorsque f.select

-1voto

rizwan ali Points 1
<%= f.select :tag_ids, Tag.all.collect {|t| [t.name, t.id]}, { :prompt => "Please select"}, { :multiple => true, :size => 5 } %>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X