2016-08-24 60 views
0

我一直在注意到,rails社區一直在朝着使用「:」符號的方向努力去尋找更多的東西。現在,最近我收到一個代碼審查的評價是這樣的:有什麼區別:to和=> in rails

post 'examples/', to: 'examples#index' 

比這更好:

post "examples/" => "examples#index" 

我的問題是:

  1. 是否有這兩個之間的差異聲明?
  2. 如果是這樣,爲什麼一個比另一個好?
  3. 爲什麼rails社區切換到「:」符號(或他們)?
  4. 繼續前進的軌道4和即將5,都格式仍然可以接受?
+0

冒號是鍵符號時的簡寫。從Rails 4不會有任何效果4 => 5 - 這是一個Ruby語言的東西 –

+0

從技術上講,第一個與'post「examples /相同:to =>」examples#index「''post'方法接受一些定義,包括一個簡單的哈希。 – tadman

回答

4

在Rails航線方面:

  • 是否有這兩個語句之間的區別嗎?

沒有區別。

  • 如果是這樣,爲什麼一個比另一個好?

不,這是一樣的。

  • 爲什麼rails社區切換到「:」符號(或它們是 )?

只是一個更具可讀性,'from' => 'to''from', to: 'to'

  • 與軌道4向前邁進,並很快5,是這兩種格式仍 接受嗎?

是的。

=>表示法這是一個散列ruby功能,並且與:symbol相關。 你可以用兩種方式寫符號:key => valuekey: value