Я видел несколько вопросов/ответов, избегающих предварительной компиляции различных активов при использовании конвейера Rails; однако я хочу эффективно выполнять черный список через массив совпадений Regex для соответствия имени пути, чтобы исключить из предварительной компиляции. Чаще всего для меня это часто представляет собой набор партиций, которые в любом случае не будут прекомпиляции.Избегайте предварительной компиляции активов в Rails (черный список по Regex)
0
A
ответ
1
Первый раз - keithgaputis мастерски answered a part of this here, но это не совсем ответ на вышеуказанный вопрос. Читайте и голосуйте свой ответ, а затем увидеть мои дополнения к его ниже:
Rails.application.config.assets.precompile << Proc.new { |path|
blacklist = [
/nvd3\/src\/intro.js$/,
/nvd3\/src\/outro.js$/,
/^.*\.less$/,
/admin\/modules/,
/admin\/themes/,
/admin\/responsive\..*css/
]
full_path = Rails.application.assets.resolve(path)#.to_path
puts "path: #{path}\nfull_path: #{full_path}" if BLACK_MAGIC[:assets][:debug]
if (path =~ /(^[^_\/]|\/[^_])[^\/]*$/) and (path !~ Regexp.union(blacklist))
puts "including asset: " + full_path if BLACK_MAGIC[:assets][:debug]
true
else
puts "excluding asset: " + full_path if BLACK_MAGIC[:assets][:debug]
false
end
}
Вы можете добавить все ваши регулярные выражения в черный список массива для исключения, а затем на две части, если условие
if (path =~ /(^[^_\/]|\/[^_])[^\/]*$/) and (path !~ Regexp.union(blacklist))
сначала удалите элементы, начинающиеся с подчеркивания (это еще не совсем идеальное Regex, играйте с rubular), а во-вторых, устраните все, что соответствует черным спискам. Счастливое кодирование!
Смежные вопросы
- 1. Как изолировать объект с ошибками при предварительной компиляции активов Rails?
- 2. Rails: Исключить определенные ресурсы от предварительной компиляции
- 3. Создайте плагин rails для предварительной обработки активов
- 4. Rails компиляции активов имен файлов
- 5. rails/capistrano - ошибка компиляции активов
- 6. Предварительные компиляции активов, созданных по модели
- 7. Что означает + =% w в строке, используемой для предварительной компиляции активов в assets.rb?
- 8. Избегайте предварительной обработки #includes
- 9. Конвейер активов Rails 3.1: другие активы на Amazon S3, требующие предварительной компиляции?
- 10. Сбой предварительной компиляции при развертывании
- 11. Rails пропустить инициализатор в прекомпиляции активов
- 12. Черный список модели в Rails 4
- 13. Объединить белый список и черный список в выражении java regex
- 14. Контейнер активов Rails - как включить актив не в путь активов?
- 15. LinqToSql Преимущества предварительной компиляции?
- 16. Ошибка предварительной компиляции активов в рельсах 3. Получение `rake aborted! Неожиданный маркер: ключевое слово (возвращение) `
- 17. Ошибка компиляции CSS активов
- 18. Испанский профанация черный список
- 19. Ruby Rails прекомпиляция активов по сравнению с использованием конвейера активов
- 20. Диагностика ошибок предварительной компиляции приложений рельсов
- 21. Нет ошибки метода, [] не определено для класса ноль при предварительной компиляции активов для производства
- 22. IntelliJ «Выполнение заданий предварительной компиляции ...:«
- 23. Objective-C ошибка предварительной компиляции
- 24. Избегайте компиляции накладных расходов
- 25. Избегайте компиляции: multidir
- 26. Объяснение использования активов Rails
- 27. Rails Двигатель не загружается в прекомпиляцию активов
- 28. активов трубопровод выключился, но «активы ошибок компиляции»
- 29. asset_sync не компиляции активов S3
- 30. рельсы ошибка компиляции CSS активов