2012-12-26 12 views
60

czytam pomoc & próbowała następujące polecenie, aby pominąć generacji testów, aktywa & pliki pomocniczeJaka jest składnia, aby pominąć tworzenie testów, zasobów i pomocników podczas uruchamiania `rails generate controller`?

$ bin/rails generate controller home index --helper false --assets false --controller-specs false --view-specs false 
create- app/controllers/home_controller.rb 
     route get "home/index" 
     invoke erb 
     create app/views/home 
     create app/views/home/index.html.erb 
     invoke rspec 
     error false [not found] 
     error false [not found] 

Jak można zauważyć przez wyjście powyżej to działa & tylko controller, routes & views są generowane. Ale jak dwie ostatnie linie są ciekawe:

error false [not found] 
error false [not found] 

Oczywiście szyny nie wydaje się podoba --option-name false składnię. więc ten błąd, ponieważ użyłem niewłaściwej składni? Jeśli tak, to w jaki sposób? Dzięki

Odpowiedz

134

Spróbuj użyć --no- następnie optionname:

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

Jeśli chcesz zmienić domyślne zachowanie każdym uruchomieniu polecenia generatora, można skonfigurować ustawienia domyślne, które chcesz w pliku environment.rb - patrz How can I make sure Rails doesn't generate spec tests for views and helpers?.

+0

więc '--no-opcja-name' jest składnia. Dzięki – CuriousMind

+1

Możesz również użyć 'pominąć' zamiast' nie', np. '--skip-assets' – Dennis

65

Aby wyłączyć bez konieczności dodawania opcji:

# application.rb 
config.generators.assets = false 
config.generators.helper = false 
17

Więcej zwięźle:

rails g controller home index --no-assets --no-test-framework 
33

aplikacji, które służą jedynie API nie będzie wymagać javascript, stylesheet, views, helpers. Aby pominąć te pliki w Generator/rusztowania dodać poniższy blok kodu w kontroli 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 

link aby uzyskać więcej informacji o generators

+0

Powyższe działa, jeśli użyjesz' false' zamiast 'nil'. – bigtex777