J'ai lu l'aide et essayé la commande suivante pour ignorer la génération de tests, de ressources et de fichiers d'assistance
$ 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]
Comme vous pouvez le constater par la sortie ci-dessus, cela fonctionne & seulement controller, routes
& views
sont générés. Mais comme les deux dernières lignes sont intéressantes:
error false [not found]
error false [not found]
De toute évidence Rails ne semble pas aimer --option-name false
syntaxe. donc cette erreur parce que j'ai utilisé la mauvaise syntaxe? Si oui, quelle est la bonne façon? Merci
Essayez d'utiliser --no-
suivi de optionname
:
Rails generate controller home index --no-helper --no-assets --no-controller-specs --no-view-specs
Si vous souhaitez modifier le comportement par défaut à chaque fois que vous exécutez la commande du générateur, vous pouvez configurer les valeurs par défaut que vous souhaitez dans le fichier application.rb - voir Comment puis-je m'assurer que Rails = ne génère pas de tests de spécifications pour les vues et les aides? .
Pour désactiver sans avoir à ajouter d'options:
# application.rb
config.generators.assets = false
config.generators.helper = false
Les applications qui ne servent qu'à l'API ne nécessitent pas javascript
, stylesheet
, views
, helpers
. Pour ignorer ces fichiers dans le générateur/échafaudage, ajoutez le bloc de code ci-dessous dans le 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
consultez le lien pour plus de détails sur générateurs
Plus concis:
Rails g controller home index --no-assets --no-test-framework