2010-09-01 44 views
4

我還在學習Ruby on Rails,但一直在想如果我犯了一個錯誤會發生什麼。例如,如果我腳手架並犯了一個錯字,我該怎麼辦?如果我不做腳手架,生成一個模型,rake db:遷移它並發現我需要添加一個列或刪除一個,我該怎麼做?有時候在數據庫上使用第三方管理員而不是讓RoR完成這些工作會更好嗎?我不確定如何使用RoR進行設計。每次我都不能完美無缺!Ruby On Rails設計問題:如果我犯了一個錯誤怎麼辦?

感謝

回答

6

有通常的方式,只要你知道如何做才能修復鐵軌任何問題。您可以創建新的遷移來修復舊的遷移,或者回滾數據庫並更改原始遷移。所有的rails生成函數也具有破壞函數。如果你搞亂腳手架並立即抓住它,就把它摧毀,然後再做。例如,在導軌3:

rails generate model ModelName 

可以與

rails destroy model ModelName 

在導軌< 3反轉的語法是紅寶石腳本/生成和分別紅寶石腳本/破壞。 Google如何反向遷移。讓Rails爲您做好辛苦的工作,沒有必要用第三方應用程序重新發明輪子。

至於版本控制,學習它。當我開始時,我不知道如何使用git,它比我的數量更多地保存了我的屁股。使用github建立一個帳戶,它使學習git SUPER變得簡單。

當你卡住了,信任stackoverflow。這裏的人真的很有幫助,而且從來沒有判斷力。非常適合初學者和專業人士!

+0

哈哈,沒有看到你的聲望得分。猜猜你已經知道如何令人敬畏的stackoverflow是;-) – Ryan 2010-09-01 20:59:24

0

使用源代碼管理。如果您犯了一個錯誤,只需恢復更改並生成的任何文件消失。

在遷移過程中,如果您在開發環境中犯了錯誤,只需刪除數據庫,編輯不正確的文件並再次遷移數據庫。您只有在投入生產或與另一方共享時才需要擔心遷移完整性。

0

我會建議本地源代碼控制的git。特別是發電機做了很多工作,你應該使用一個safeline。 git給你沒有太多的麻煩 - 而且你不需要服務器。

  • GIT中的init - 將生成的.git
  • GIT中的本地資源庫提交-a -m 「消息」 - 提交更改
  • git的復位(--hard)主 - 讓你回到最後一次提交

在github.com和http://gitready.com上有很好的介紹。