這兩星期的Rails筆記
這裡記錄了我被xdite大神電過的東西,希望寫下來可以提醒自己不要再犯同樣的錯誤
- 千萬不要在 view 裡面幹出運算或邏輯,把要算的東西用 helper 包起來 render
- 要接連續字串,使用 "#{str1} #{str2}" 的方式,不要用 "+"
- 寫 rake task 時用到的 model 物件, 必須是 app/models/ 裡面的檔名. 而不是 db 實際的 table 名. (當然按照慣例, 這兩者會是一樣的. 但如有不同時, 以 app/models/ 裡的檔名為準.
- 在寫 customized 404 / 500 page 時, routes.rb 的 unless 判斷要放在 code 的最下面. 才不會把所有 request 都截下來變 404.
- 在 Rails Console 裡要試驗 module 的方法 include ModuleName
- object 狀態要在 model 裡 def method 來定義,而不是由 controller 從 object 的 column 去組出狀態 ( 直觀 <=> 非直觀 )
- 命名原則要讓人看的懂. ex auth_gsm => 到底是表達「認證的狀態」還是「認證用的手機號碼」,詳細可以參照這篇
- HTTP method 動詞要慎用, 見附表.
- 開發版的假圖要丟在 public/fake/ 而不是 assets/images/, 避免在正式版本會一起壓進 assets 然後又忘記刪除.
- To Be Continued
Action HTTP Method Purpose
-------------------------------------------------------------------------
index GET Displays a collection of resources
show GET Displays a single resource
new GET Displays a form for creating a new resource
create POST Creates a new resource (new submits to this)
edit GET Displays a form for editing an existing resource
update PUT Updates an existing resource (edit submits to this)
destroy DELETE Destroys a single resource