[問題] symbol and string

看板Ruby作者 (向下一站出發)時間17年前 (2007/11/10 22:42), 編輯推噓6(604)
留言10則, 4人參與, 最新討論串1/1
最近在研究RoR,看了兩本書,分別是 Agile Web Development with Rails和Ruby on Rails: Up and Running 發現到一個讓我有點迷惑的問題 舉例來說 在定義migration時,要建立一個 orders table def self.up create_table ??? do |t| .......... end ???這裡到底是該用 :orders 來表示還是用 "orders" 呢? 不止這裡會這樣,像是render要指定controller和action時 有時會用symbol,有時會用string 所以想請問一下到底兩者有何差別亦或是兩者皆可 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.34.120

11/10 23:00, , 1F
有時候是通用的,不過通常是左邊用 symbol, 右邊用 string
11/10 23:00, 1F

11/10 23:01, , 2F
版主的意思是 symbol => string (左邊symbol,右邊string)?
11/10 23:01, 2F

11/10 23:26, , 3F
對,就我注意到的是大部份是這樣,不過當然不是全部
11/10 23:26, 3F

11/10 23:30, , 4F
感謝版主,那我再多注意其他例子看是不是這樣好哩~!
11/10 23:30, 4F

11/10 23:39, , 5F

11/10 23:40, , 6F

11/10 23:54, , 7F
also refer #474 :)
11/10 23:54, 7F

11/22 13:33, , 8F
基本上,String優先權好像大於Symbol,在任何時候
11/22 13:33, 8F

11/22 13:33, , 9F
String都可以用,但是在render時,右邊不可以是Symbol
11/22 13:33, 9F

11/22 13:34, , 10F
只能夠用String而已。但是左右邊都可以是String
11/22 13:34, 10F
文章代碼(AID): #17DSDPtA (Ruby)
文章代碼(AID): #17DSDPtA (Ruby)