1

只是通过一个教程,并在我看到的某个地方思考

first_name:

还有一个地方

:first_name

这是正确的吗?有什么区别?

4

2 回答 2

5

: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}
于 2012-06-10T12:52:32.167 回答
5

Ruby 1.9.2 中更改了哈希语法以更接近 json。

所以:

{ :foo => "bar" }

是相同的:

{ foo: "bar" }

在所有其他情况下,冒号必须排在第一位。

于 2012-06-10T12:48:38.507 回答