我正在尝试在Rails的表单内创建一个select_tag,但是当它不起作用时,它向我显示以下错误:wrong number of arguments (given 4, expected 1..3)
我要做的是用html属性和提示实现select。方法cargarMaterias
,搜索数据库并返回一个元素数组,其当前印象如下:
["1-Sistemas de Informacion", "2-Programacion", "3-Matematicas", "4-Ingenieria Web"]
哦,我忘了,selected_tag的实现如下:
<%= select_tag :codigo_materia, Subject.cargarMaterias,{ prompt: "Seleccione la materia"}, {id: "EditboxCodigoMatHistMat", class: "EditBox"} %>
我已经做了几个小时的相同的事情,但是我仍然不能解决这个问题。谢谢。
答案 0 :(得分:2)
select_tag(name,option_tags = nil,options = {})公共
您应按以下方式重写select_tag
<%= select_tag :codigo_materia, Subject.cargarMaterias, { prompt: "Seleccione la materia", id: "EditboxCodigoMatHistMat", class: "EditBox"} %>
options
和html_options
都应作为最后一个论点去到select_tag
。换句话说,任何其他标准 HTML 密钥也应作为options
传递。
进一步简化,可以将其写为
<%= select_tag :codigo_materia, Subject.cargarMaterias, prompt: "Seleccione la materia", id: "EditboxCodigoMatHistMat", class: "EditBox" %>
注意:
您对option_tags
的值是有缺陷的。应该像这样将其作为container
传递给options_for_select
<%= select_tag :codigo_materia, options_for_select(Subject.cargarMaterias), prompt: "Seleccione la materia", id: "EditboxCodigoMatHistMat", class: "EditBox" %>