mail_to: user.email, subject: "Password Reset"
我是Rails的新手。我知道冒號出現在符號之前,但不知道爲什麼會出現這種類型的單詞。我對conf_mail_to和subject有疑問,所以請有人解釋一下
mail_to: user.email, subject: "Password Reset"
我是Rails的新手。我知道冒號出現在符號之前,但不知道爲什麼會出現這種類型的單詞。我對conf_mail_to和subject有疑問,所以請有人解釋一下
這會引起混亂,特別是因爲:名字是對自己有效的(作爲一個獨立的象徵),但名稱:沒有任何意義通過它自己。
的底線是:名稱=>和名稱:是有效的只有裏面的文字哈希值相同,使
{ :name => "Michael Hartl" }
和
{ name: "Michael Hartl" }
是等價的,但除此之外,你需要使用:name(用冒號先出現)表示一個符號。
這是因爲兩種散列語法仍然是常用的,所以能夠識別它們是非常重要的。 (我的答案已經被Micheal Hartl的Ruby on Rails引用)
這個語法是在Ruby 1.9中引入的,使得哈希更具可讀性。
:subject => "Password Reset"
# Starting from 1.9 you can do
subject: "Password Reset"
這些語法的兩個是一個語法糖:
{ :subject => "Password Reset" }
它與mail_to標籤沒有什麼關係,這裏你感到困惑的是Ruby 1.9中引入的符號和哈希語法之間的區別 – uday