只是通过一个教程,并在我看到的某个地方思考
first_name:
还有一个地方
:first_name
这是正确的吗?有什么区别?
:first_name 是一个符号,而 first_name: 是新 Ruby 1.9.2 语法中的哈希键。
然后将哈希键转换为符号:
>> a = { foo: 10 , bar: 20 }
=> {:foo=>10, :bar=>20}
和写法一样:
>> a = { :foo => 10, :bar => 20 }
=> {:foo=>10, :bar=>20}
Ruby 1.9.2 中更改了哈希语法以更接近 json。
所以:
{ :foo => "bar" }
是相同的:
{ foo: "bar" }
在所有其他情况下,冒号必须排在第一位。