2009-06-20 68 views
0

我最近開始使用Rails的「敏捷web開發」一書,在使用rails的一些早期經驗但希望採用更加結構化的方法之後,由實用程序員開始。在我的控制器中似乎無法運行「腳手架:產品」

當他們要求我製作控制器管理員時,我很高興跟隨本書,因此我可以編輯已創建的標準CRUD產品模型。根據這本書,我應該添加'腳手架:產品'這一行到我的admin_controller,它應該像魅力一樣運行。那麼,我的軌道只會說:「AdminController:Class」的未定義方法`腳手架'。

我知道他在本書中使用了較老的rails版本,比如1.8或者其他東西,而且我知道如何運行一個普通的腳手架,但不知道如何讓admin_controller繼承產品中的所有juicy CRUD細節, 。我試圖將所有視圖和腳手架生成的控制器代碼從product_controller複製到管理員,並且工作正常,但我真的很想知道正確的方法是什麼。

我admin_controller:

class AdminController < ApplicationController 
scaffold:product 
end 

回答

2

你提到的功能,動態腳手架,已經在Rails中取出2

我建議使用常規的腳手架和從那裏,如果你是新來的Rails 。一旦你獲得了更多的經驗,它將很容易迅速釀造出你自己的控制器動作。

有一些替代動態腳手架這可能有助於快速原型,或者如果你開發了很多類似的功能:

0

更好的方法時下是使用腳手架發生器而不是腳手架方法。當第一次開發軌道時,腳手架方法是一個令人印象深刻的展示,但它隱藏太多,而且無法修改所需的位。爲了解決這個問題,腳手架是作爲發電機完成的,因爲它們暴露了代碼,並且允許您更容易地進行編輯。然後將腳手架方法從Rails中移除以防止它被使用。