簡體   English   中英

如何在 Rails 中的 collection_select 中使用選定字段中的控制器變量?

[英]How to use a controller variable the in selected field for in collection_select in Rails?

假設我的控制器中有這個數組變量: @estudiantes_seleccionados = @clase.estudiantes

具體來說,在:

def set_clase
  @clase = Clase.find(params[:id])
  @estudiantes_seleccionados = @clase.estudiantes
end

我如何在視圖中的collection_select中的selected:字段中使用它(@estudiantes_seleccionados),以便在加載下拉列表時預選變量中的多個值?

<%= collection_select(:estudiantes, :id, Estudiante.all, :id, :id_campus, {selected: @estudiantes_seleccionados}, {class: 'form-control', multiple: 'true'}) %>

問題似乎是multiple: 'true' 當我刪除它時,只有@estudiantes_seleccionados 的一個值在下拉列表中被預選,但是當它存在時,數組中的任何值都不會出現。

那么,我如何讓@estudiantes_seleccionados的所有值顯示為下拉列表中的預選?

請嘗試以下操作:

<%= collection_select(:estudiantes, :id, Estudiante.all, :id, :id_campus, {selected: @estudiantes_seleccionados.map(&:id)}, {class: 'form-control', multiple: 'true'}) %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM