Как отключить автоматическую генерацию таблиц стилей / JavaScript в Rails 3.1? - PullRequest
35 голосов
/ 09 сентября 2011

У меня есть проект Rails 3.1, над которым я работаю, но я не хочу, чтобы controller_name.css.sass и controller_name.js.coffee генерировались при каждом запуске rails generate controller controller_name. Я мог бы поклясться Я видел настройку где-то в интернете, но я не могу найти ее сейчас для себя. Что это?

Имейте в виду, что я все еще хочу использовать конвейер активов и интеграцию CoffeeScript / Sass, но я организую эти файлы по-своему.

Я почти уверен, что ответом является аргумент командной строки, но бонусные очки за его отключение с помощью настройки генератора, скрытого файла или чего-то еще.

РЕДАКТИРОВАТЬ : Я нашел для него флаг командной строки.

rails generate controller controller_name --assets=false

Или что-то в этом роде (эта строка фактически выдает ошибку, но она также не генерирует ресурсы). API здесь показывает :assets => true в качестве опции по умолчанию. Как мне изменить это на false и всегда ли оно будет false каждый раз, когда я генерирую контроллер?

Ответы [ 5 ]

84 голосов
/ 10 сентября 2011

Добавьте эти строки в application.rb:

config.generators.stylesheets = false
config.generators.javascripts = false
21 голосов
/ 22 июля 2013

Новый синтаксис: rails generate controller Resources --no-assets.

Не забывайте, что вы также можете использовать g вместо generate. И вы можете пропустить создание помощника контроллера, используя флаг --no-helper.

10 голосов
/ 22 февраля 2013

Только один раз используйте:

rails generate controller controller_name --no-assets
7 голосов
/ 30 января 2015

Обновление ответа @Dmitry Maksimov для Rails 4.2.Вы можете отключить генерацию файлов ресурсов для контроллера по умолчанию, указав в файле config/application.rb следующее (источник: руководство ):

config.generators do |g|
  g.assets false
end
1 голос
/ 14 июня 2016

Мои варианты:

config.generators do |g|
    g.stylesheets = false
    g.javascripts = false
    g.test_framework  :rspec, fixture: false
    g.template_engine :haml
    g.fixture_replacement :factory_girl, dir: 'spec/factories'
end
...