2015-01-08 6 views
0

Как я могу управлять загрузкой файлов CSS и JavaScript в Rails 4 вместо загрузки дерева?Rails: Как управлять CSS, Javascript-файлами

Я новичок в Rails, и я заметил, что он создает для меня новый CSS-файл JS для каждого контроллера, но затем включает их все на всех страницах благодаря *= require_tree ..

мне нужны две вещи, пожалуйста:

  1. Have Rails автоматически включать CSS по умолчанию/JS файл по своему выбору плюс один CSS/JS в соответственными называется контроллером
  2. Уметь добавить новый специальный CSS/JS, выбранный в контроллере

ответ

0

Как насчет этого.

  1. Удалить require_tree.
  2. Измените файл макета, который включает в себя CSS/JS, соответствующие имени контроллера.
  3. Поместите CSS/JS в активы.
  4. Сделать манифесты контроллеров CSS/JS.
  5. Расширение целевых файлов конвейера на production.rb.

Пример для контроллера АБА

application.js

//= require jquery 
//= require jquery_ujs 
//= require turbolinks 

application.css

/* 
*= require_self 
*= require font-awesome 
*= require_tree ./pepper-grinder 
*= require ./ui.jqgrid 
*/ 

макеты/application.html.erb

<!DOCTYPE html> 
<html> 
<head> 
    <title>Log Analyzer</title> 
    <%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %> 
    <%= stylesheet_link_tag  controller.controller_name , media: "all", "data-turbolinks-track" => true %> 
    <%= javascript_include_tag "application", "data-turbolinks-track" => true %> 
    <%= javascript_include_tag controller.controller_name , "data-turbolinks-track" => true %> 
    <%= csrf_meta_tags %> 
</head> 

приложение/активы/JavaScripts/aaas.js

//= require jquery-ui-1.10.3.custom.min 
//= require grid.locale-ja 
//= require aaas_main 

приложение/активы/таблицы стилей/aaas.css

/* 
*= require_self 
*= require aaas_main 
*/ 

конфигурации/среда/production.rb

#config.serve_static_assets = false 

    config.assets.precompile += %w(aaas.js) 
    config.assets.precompile += %w(aaas.css) 

запустить

$ rake assets:precompile RAILS_ENV=production 
$ rails s -e production 
Смежные вопросы