我需要在 select_tag 中预先选择多个值。但我在表格空缺中“手动”添加空缺,如下所示:
我的 Controller :
def create
@hr_curriculum_generic = HrCurriculumGeneric.new(params[:hr_curriculum_generic])
if params[:vacancy_ids].present?
@vacancies_ids = params[:vacancy_ids]
-- 我的表单:
@vacancies_ids.each do |vacancy_id|
# Armazena os id do curriculum, vaga e do cargo na tabela CandidatosxVagas
@candidates_vacancies = CandidatesVacancy.new
<% @vacancies = Vacancy.all %>
<%= select_tag "vacancy_ids[]", options_from_collection_for_select(Vacancy.all, "id", "title"), :multiple => true, :id => "vacancy_ids", :class => "form-control" %>
.....
它有效,但是当我点击编辑按钮时,字段没有被预选。
最佳答案
options_from_collection_for_select有 4 个参数:
- 收藏
- 编号
- 专栏
- 已选择
您可以提供单个值或散列来表示选定的值。试试这个:
<%= select_tag "vacancy_ids[]", options_from_collection_for_select(Vacancy.all,"id","title",{:selected=>[1,2,3,4]})), :multiple => true, :id => "vacancy_ids", :class => "form-control" %>
我不确定您尝试选择的值来自何处,但将它们通过管道传输到选定的哈希中。
关于ruby-on-rails - 选择具有多个预选值的标签 - 在数据库中手动插入的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21667251/