Rails 生成 Scaffolding

免責宣告 :除非是非常傳統的 CRUD 應用程式/測試,否則不建議使用 Scaffolding。這可能會生成 Web 應用程式中不需要的大量檔案(檢視/模型/控制器),從而導致頭痛(糟糕:())。

要為新物件生成完全工作的 Scaffolding,包括模型,控制器,檢視,資產和測試,請使用 rails g scaffold 命令。

$ rails g scaffold Widget name:string price:decimal
    invoke  active_record
    create    db/migrate/20160722171221_create_widgets.rb
    create    app/models/widget.rb
    invoke    test_unit
    create      test/models/widget_test.rb
    create      test/fixtures/widgets.yml
    invoke  resource_route
     route    resources :widgets
    invoke  scaffold_controller
    create    app/controllers/widgets_controller.rb
    invoke    erb
    create      app/views/widgets
    create      app/views/widgets/index.html.erb
    create      app/views/widgets/edit.html.erb
    create      app/views/widgets/show.html.erb
    create      app/views/widgets/new.html.erb
    create      app/views/widgets/_form.html.erb
    invoke    test_unit
    create      test/controllers/widgets_controller_test.rb
    invoke    helper
    create      app/helpers/widgets_helper.rb
    invoke    jbuilder
    create      app/views/widgets/index.json.jbuilder
    create      app/views/widgets/show.json.jbuilder
    invoke  assets
    invoke    javascript
    create      app/assets/javascripts/widgets.js
    invoke    scss
    create      app/assets/stylesheets/widgets.scss

然後你可以執行 rake db:migrate 來設定資料庫表。

然後你可以訪問 http:// localhost:3000 / widgets ,你會看到一個功能齊全的 CRUD Scaffolding。