select helper中选项和选项之间有什么区别?

时间:2018-06-11 19:40:55

标签: ruby-on-rails

因此表单中select方法的要求是:

select(object, method, choices = nil, options = {}, html_options = {}, &block) 

那么'选择'和'选项'之间有什么区别?我试图访问html_options,但它说我需要先填写选项。我一直在搜索文档半小时,但找不到任何内容。感谢。

1 个答案:

答案 0 :(得分:1)

选择可以是平面集合或嵌套集合(这将生成optgroup标记)。文档中的一个例子:

select("post", "person_id", Person.all.pluck(:name, :id), {include_blank: 'None'})

您将始终需要以正确的顺序提供参数,如果您不想提供它们,您可以简单地传递默认值

select("post", "person_id", Person.all.pluck(:name, :id), {}, {required: true})

您在html_options中传递的任何内容都会放在HTML标记上,您可以传递的内容:

  • name:由rails确定为空白
  • id:由rails确定为空白
  • multiple:指定是否可以选择多个值
  • 必需:表明该字段是必需的
  • 已禁用:如果该字段已停用
  • size:select(默认为1)
  • 中显示的项目数

您正在寻找的官方文档可在此处找到:http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html