对于以下代码行,
validates :name, presence: true, length: { minimum: 5, maximum: 100 }
何时使用带空格的冒号,然后使用符号,或符号冒号,然后使用空格?
例如validates :name
和presence: true
我不明白其中的差异。
答案 0 :(得分:3)
validates :name, presence: true, length: {minimum: 5, maximum: 100}
反过来:
validates(:name, **{presence: true, length: {minimum: 5, maximum: 100}})
其中:name
是调用Symbol
方法的第一个[validates
]参数,而具有键:presence
和:length
的双重散列哈希是第二个参数。
Hash
可以使用冒号表示法声明:
{a: 42}
与
相同{:a => 42}
此外,对于双splatted散列参数,可能会省略curlies。