Generate a controller with all the RESTful functions

前端 未结 10 1461
遇见更好的自我
遇见更好的自我 2021-01-30 07:58

I am trying to generate a controller with all the RESTful actions stubbed. I had read at Wikibooks - Ruby on Rails that all I needed to do was to call the generator with the co

相关标签:
10条回答
  • 2021-01-30 08:41

    EDIT(due to some comments) : Original question was in 2010 - hence the answer is NOT for RAILS 4 , but for rails 2!!

    try using scaffolding.

    script/generate scaffold controller Properties
    

    Section of Official docs on Ruby On Rails

    I'm sure you can find more info if you do a google search on rails scaffolding. Hope that helps.

    EDIT: For RAILS 4

    rails g scaffold_controller Property

    0 讨论(0)
  • 2021-01-30 08:42

    Rails 5.1

    Starting point:

    You have created a model without a controller, nor views (eg thru: rails generate model category)

    Objective:

    Upgrade it to a full RESTful resource

    Command:

    rails generate scaffold_controller category

    It stubs out a scaffolded controller, its seven RESTful actions and related views. (Note: You can either pass the model name CamelCased or under_scored.)

    Output:

    varus@septimusSrv16DEV4:~/railsapps/dblirish$ rails generate scaffold_controller category
    Running via Spring preloader in process 45681
          create  app/controllers/categories_controller.rb
          invoke  erb
          create    app/views/categories
          create    app/views/categories/index.html.erb
          create    app/views/categories/edit.html.erb
          create    app/views/categories/show.html.erb
          create    app/views/categories/new.html.erb
          create    app/views/categories/_form.html.erb
          invoke  test_unit
          create    test/controllers/categories_controller_test.rb
          invoke  helper
          create    app/helpers/categories_helper.rb
          invoke    test_unit
          invoke  jbuilder
          create    app/views/categories/index.json.jbuilder
          create    app/views/categories/show.json.jbuilder
          create    app/views/categories/_category.json.jbuilder
    
    0 讨论(0)
  • 2021-01-30 08:46

    One solution is to create a script that accepts one parameter, the controller name, and let the script type the whole command for you.


    1. Create a new file, say, railsgcontroller
    2. Make it executable and save it on path
    3. Run it like: $ railsgcontroller Articles

    die () {
        echo "Please supply new rails controller name to generate."
        echo >&2 "$@"
        exit 1
    }
    
    [ "$#" -eq 1 ] || die "1 argument required, $# provided"
    
    rails g controller "$1" new create update edit destroy show index
    
    0 讨论(0)
  • 2021-01-30 08:53

    I don't know about an automated way of doing it, but if you do:

    script/generate controller your_model_name_in_plural new create update edit destroy index show
    

    All of them will be created for you

    Update for Rails 4

    rails g scaffold_controller Property
    
    0 讨论(0)
提交回复
热议问题