在表单助手中传递选项是否需要显式哈希?
Is an explicit hash required to pass in options in form helpers?
docs for text_field
显示其用法如下:
text_field(object_name, method, options = {})
但在示例中没有明确声明散列:
text_field(:post, :title, maxlength: 30, class: "title_input")
这是如何工作的?
rails是否认识到开发人员可能只意味着一件事(第二个元素以外的所有内容都必须属于散列)?还是有其他事情发生?
这是选项散列的示例。这是语言的一个特点。 Ruby 本身允许您使用选项散列定义方法,并且在前两个必需参数(object_name
、method
)之后它将读取任何其他参数作为选项散列的一部分,如只要您使用正确的哈希语法 (key: value
).
散列本身提供了灵活性,因此您可以添加 HTML 字段将接受的任何内容:id
、class
、data-
元素等。
docs for text_field
显示其用法如下:
text_field(object_name, method, options = {})
但在示例中没有明确声明散列:
text_field(:post, :title, maxlength: 30, class: "title_input")
这是如何工作的?
rails是否认识到开发人员可能只意味着一件事(第二个元素以外的所有内容都必须属于散列)?还是有其他事情发生?
这是选项散列的示例。这是语言的一个特点。 Ruby 本身允许您使用选项散列定义方法,并且在前两个必需参数(object_name
、method
)之后它将读取任何其他参数作为选项散列的一部分,如只要您使用正确的哈希语法 (key: value
).
散列本身提供了灵活性,因此您可以添加 HTML 字段将接受的任何内容:id
、class
、data-
元素等。