了解Scaffold Generator (转载)
了解Scaffold Generator
“支架”“生成器”使用Rails 的動態“支架”(scaffold :somemodel) 可寫出同樣的代碼,所以你會獲得“樣本代碼”并且可自由地修改。
?
?
用法: script/generate scaffold ModelName? ControllerName? [action, ...]
通常選項:
-p, --pretend 運行但不做任何修改。
-f, --force 覆寫現有文件。
-s, --skip 跳過現有文件。
-q, --quiet Keep is like a secret with /dev/null.
-t, --backtrace 調試:顯示錯誤的 backtrace 。
-h, --help 顯示此幫助信息。
建議:不應該讓 script/generate scaffold 接受一個可選的DB 表名字做為一個參數? 臨時的重命名表只允許使用生成sucks…
描述:
“支架”“生成器”創建與“模型”交互的“控制器”。如果“模型”不存在,它也創建“模型”。生成的代碼贊同于“scaffold:model” 聲明,但是當你希望定制你自己的“控制器”和“視圖”時,它更容易移植。
“生成器”接受一個“模型”名字,一個可選的“控制器”名字,和一個“視圖”列表做為參數。做為“支架”的“動作”和“視圖”會被自動地創建。任何“視圖”都是空代碼。
做為“支架”的“動作”和“視圖”是: index, list, show, new, create, edit, update, destroy 。
如果沒有給出“控制器”的名字,則“控制器”名字使用“模型”名字的復數形式。“模型”和“控制器”的名字可以使用“駱峰風格”或者帶有下劃線,但是不可以帶有前綴 ‘Model’ 或‘Controller’ 字樣?!澳P汀焙汀翱刂破鳌钡拿挚赡芟裎募窂揭粯邮褂媚K做為前綴;可以查看“模塊例子”的用法。
例子:
./script/generate scaffold Account Bank debit credit
這命令會生成一個Account “模型”和帶有完整測試組以及基本接口的BankController “控制器”?,F在在你的數據庫中創建accounts 表并導航瀏覽器已http://localhost/bank/— 你已在Rails 中了!
“模塊例子”:
./script/generate controller 'admin/credit_card' suspend late_fee
這會在amin 模塊內創建一個CreditCard “模型”和CreditCardController “控制器”。
深入“支架”
您可以使用AjaxScaffold generator ,它提供了與缺省的“支架”“生成器”的所有功能,但是使用Ajax 會使“支架”更容易使用。這兒是一些AjaxScaffold 的優點:
- Generates a production ready, fully styled, interface for managing models
- Generates valid XHTML and CSS.
- Guaranteed to work on Firefox 1+, IE 6 and Safari 10
- Gracefully degrades when Javascript is not available
Question: does “generate scaffold” really emulate the “scaffold” method ?
If so, how do I merge two different scaffolded models in one controller?, like I’d do with
scaffold :foo, :suffix=>true
scaffold :bar, :suffix=>true
總結
以上是生活随笔為你收集整理的了解Scaffold Generator (转载)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安装 RAILS ANNOTATE_MO
- 下一篇: 在项目中使用 calendar_date