2013-01-05 33 views
5

Có cách nào để làm cho tự động biên dịch tự động biên dịch nén tệp không.Assetic Symfony2 ít hơn + nén bộ lọc

tôi đã cố gắng cấu hình này:

assetic: 
debug:   "%kernel.debug%" 
use_controller: true 
bundles:  ['BloggerBlogBundle', "FOSCommentBundle"] 
#java: /usr/bin/java 
filters: 
    cssrewrite: ~ 
    less: 
     node: /home/igor/nvm/v0.8.16/bin/node 
     node_paths: [/home/igor/nvm/bin/node_modules] 
     apply_to: "\.less$" 
    yui_css: 
     jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar 
     apply_to: "\.css$|\.less" 

Nhưng kết quả này trong .css file bị nén và .less file nhận được biên soạn. Tôi không thể làm cho cả hai: biên dịch và sau đó nén các tệp .less của tôi.

Trả lời

9

Dưới đây là cấu hình và cành lá của tôi mã cho biên soạn + nén file .less trong cùng một lúc:

config.yml

# Assetic Configuration 
assetic: 
    debug:   %kernel.debug% 
    use_controller: false 
    java: %java_path% 
    filters: 
     less: 
      node:  %node_base_path% 
      node_paths: [%node_lib_path%, %node_modules_path%] 
     cssrewrite: ~ 
     yui_css: 
      jar: %kernel.root_dir%%jar_file% 
     yui_js: 
      jar: %kernel.root_dir%%jar_file% 

Trong cành lá của tôi:

{% block stylesheets %} 
    {% stylesheets 
     '@MyBundle/Resources/public/css/event.less' 
     'css/colorpicker.css' 
     filter='less,?yui_css' 
     output='build/event_layout_2cols.css' 
    %} 
     <link href="{{ asset_url }}" rel="stylesheet" media="screen" /> 
    {% endstylesheets %} 
{% endblock %} 

Và đây là lệnh để biên dịch và nén:

./app/console assetic:dump --env=prod --no-debug 

Hy vọng trợ giúp!

+3

Tôi đã đấu tranh với điều này cho đến khi tôi nhận ra bạn cần phải xóa bộ nhớ cache cho prod ** trước khi ** chạy 'assetic: dump'. Sau đó, phương pháp trên làm việc cho tôi. – fazy

Các vấn đề liên quan