Assetic arasındaki fark:döküm ve varlıkları yükleyin:
assetic:dump
assets:install
arasındaki fark nedir Symfony2,? Ne senaryolar içinde bu komutları kullanılmalıdır ve ne sipariş ederseniz amacıyla söz konusu ise)?
CEVAP
Aslında 43* *Symfony 2 üzerine kurulu olan OroCRM hakkında bir makale. Eğer içerik farklı komutları/neden bazı istiyorsanız, size ilginç gelebilir.
Önuç dosyaları (javascript, css, resimler, vb.) olmak üzere iki farklı sistem vardır Symfony bir uygulama. assets:install
ilk önce komut geldi. Bu komut için bir uygulama tüm Symfony Demetleri arama
Resources/public
klasör. Bulunan, assets:install
komut veya web/public/bundle/[bundle-name]
13 *kopya dosyaların sembolik olacak. Bu bağlantılar assets
dal fonksiyonu ile oluşturulan bu dosyaları arayın. Bu
<script src="{{ asset('js/script.js') }}" type="text/javascript"></script>
Bu olur
<script src="/bundles/[bundle-name]/js/script.js" type="text/javascript"></script>
assets
sistem yapar. Senin önyüz paket dosyaları sağlar.
assetic
sistemi farklı. assetic
, bu gibi dosyalar için bağlantı.
{% javascripts '@AcmeFooBundle/Resources/public/js/foo.js' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
Stil ve görüntüler için benzer etiketleri var. assetic
dosyaları için bağlantı sağlar dikkat edinherhangi birbundle. (@AcmeFooBundle
). Assetic ayrıca joker ile bir klasör içinde birden fazla dosya için bağlantı izin verir.
{% javascripts '@AcmeFooBundle/Resources/public/js/*' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
assetic
ile başka bir fark bağlantılar oluşturulur. dev
ortamında böyle bir şey bakacağız.
<script type="text/javascript" src="/app_dev.php/js/foo.js"></script>
<script type="text/javascript" src="/app_dev.php/js/bar.js"></script>
Yani, bu dosyalar için istekleri PHP ön denetleyicisi (app_dev.php
) özel yollar assetic
paket kur üzerinden geçecek. Bu, dev
modunda olunca, hiç kıymetleri ihtiyacı olduğu anlamına gelmektedir. Otomatik olarak dahil ediyorlar. Ayrıca, dosyalar için filtre uygulamak için izin verir. Örneğin, aşağıdaki dosyaları çekti cssrewrite
filtre uygular.
{% stylesheets 'bundles/acme_foo/css/*' filter='cssrewrite' %}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
Eğer hiç programlı lisesine varlıkların çıktı değiştirmek istedim — assetic
özel dal filtreleri yazarak bunu sağlar.
Ancak, bu performans yoğundur. Tek tek her dosyayı PHP ön denetleyicisi bir dosya üzerinden bağlamak yerine üretim, oluşturulan HTML bu gibi görünecektir
<script type="text/javascript" src="/js/as5s31l.js"></script>
Nerede as5s31l.js
nereden geliyor? assetic:dump
komutu yapar.birleştirirtüm bireysel javascript css dosyaları (filtreler uygulandıktan sonra) ve üretim için iyi, statik, ön belleğe alınabilir bir dosya oluşturur.
Ne Yapman gerektiğini
Proje özellikle aksini söylemedikçe, her zaman assets:install
ve hiç bu komutları kullanmak bilmek gerekir çünkü assetic:dump
çalıştırmak gerekir. Sadece dağıtmadan önce assetic:dump
Çalıştır prod
modunda uygulamayı görmek gerekiyor. Sırası değildir.
Yukarıda okuduğunuz ve assetic
sizin için neler yapabileceğini emin değilseniz paket kullanacağı için, assets
kullanın. İyi olacaksın.
Static_cast< arasındaki fark nedir;&...
'Tablo arasındaki fark Tarama ler...
Arasındaki fark [NSMutableArray dizi] ...
Sh ve bash arasındaki fark...
Arasındaki fark `git birleştirme` nedi...