2011-07-20 53 views
0

我有一個奇怪的問題。假設我使用腳手架創建了一些東西。這應該爲我建立許多不同的文件,包括模型,視圖和控制器中的文件。我不僅傳遞了腳手架的名稱,還傳遞了屬性/字段/變量。當我看到我生成的腳手架模型時,我沒有看到列出的這些屬性。我感到困惑。 Rails如何知道一個字段是否存在?我可以在將來更改它們以不具有某個特性或添加一個新特性嗎?Ruby on Rails:腳手架,模型和屬性

我對這個問題表示歉意。試圖學習這個框架讓我感到非常沮喪。我原本是一個開發小型學校項目的java開發人員,我想分支出去。我購買並一直在嘗試閱讀我一直聽到的有關Rails的敏捷Web開發書。這很好,但我仍然感覺不到一切都如何運作。我是不是很難理解軌道是如何工作的?

謝謝大家!

回答

2

腳手架是一種生成代碼的方式,否則您將編寫代碼。生成的代碼只是一個起點,而不是事物的最終版本。

型號: 當你腳手架,你通過現在你需要的領域。 Rails將爲您生成模型和遷移。當您運行遷移時,它將使用您傳遞的列/字段在db中創建表。模型可以動態地確定表中的字段。

如果您需要添加/刪除在未來的領域,你需要編寫一次遷移添加刪除,你可以使用rails generate migration

控制器做: 腳手架生成一個標準的控制器7點的操作,其響應寧靜的資源(你的模型):新建,創建,編輯,更新,銷燬,顯示,索引。您可以隨意添加或刪除操作。如果添加/刪除操作,則需要相應地更改路由。

觀看次數: Rails腳手架將生成準系統標準視圖,其中包含用於顯示這些字段的字段和視圖的表單。您可以根據需要自定義外觀並更改視圖。

我希望它澄清的東西。

腳手架不是生成代碼的唯一方法。有特定於模型,遷移和控制器的生成器。

我希望你看過RailsGuides。它們對於初學者以及熟悉rails的人非常有幫助。