Syntax to skip creating tests, assets & helpers for `rails generate controller`?

前端 未结 6 707
猫巷女王i
猫巷女王i 2020-12-22 17:18

I read the help & tried the following command to skip generation of tests, assets & helper files

$ bin/rails generate controller home index  --helper         


        
相关标签:
6条回答
  • 2020-12-22 17:32

    Try using --no- followed by optionname:

    rails generate controller home index  --no-helper --no-assets --no-controller-specs --no-view-specs
    

    If you want to change the default behavior every time you run the generator command, you can configure the defaults you would like in the application.rb file - see How can I make sure Rails doesn't generate spec tests for views and helpers?.

    0 讨论(0)
  • 2020-12-22 17:39

    Applications which serve only API will not require javascript, stylesheet, views, helpers. To skip those files in generator/scaffold for Rails 3.x add the below code block in the application.rb

    #to skip assets, scaffolds.css, test framework, helpers, view
    config.generators do |g|
      g.template_engine nil #to skip views
      g.test_framework  nil #to skip test framework
      g.assets  false
      g.helper false
      g.stylesheets false
    end
    

    check the link for more details about generators

    0 讨论(0)
  • 2020-12-22 17:41

    More concisely:

    rails g controller home index --no-assets --no-test-framework
    
    0 讨论(0)
  • 2020-12-22 17:47

    Inside application.rb file write: This will stop generating everything apart from what is written in the command line

    config.generators do |g|
      g.test_framework nil
      g.template_engine nil
      g.asstes false
      g.helper false
      g.stylesheets false
      g.javascripts false
    end
    

    Example:

    vidur@vidur-desktop:~/Downloads/tukaweb$ rails g controller uploader/three_d_models 
    Running via Spring preloader in process 3703
          create  app/controllers/uploader/three_d_models_controller.rb
          invoke  assets
          invoke    js
          invoke    scss
    

    for one liner solution =>

    rails g controller assets_garments --skip-test-framework --skip-assets --skip-helper
    
    0 讨论(0)
  • 2020-12-22 17:53

    If you want to generate only controller, nothing else.

    rails g controller [controller_name] [index] --no-helper --no-assets --no-template-engine --no-test-framework
    
    0 讨论(0)
  • 2020-12-22 17:58

    To turn off without having to add options:

    # application.rb
    config.generators.assets = false
    config.generators.helper = false
    
    0 讨论(0)
提交回复
热议问题