Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][SF2] regenerowanie CSS
Forum PHP.pl > Forum > PHP > Frameworki
melma.pl
W szablonie położonym w bundlu mojBundle/Resources/views/Default/layouts/base.html.twig mam następujący blok stylesheets:
  1. {% stylesheets
  2. 'sites/folder/css/bootstrap.min.css'
  3. 'sites/folder/js/slider/css/sliders.css'
  4. 'sites/folder/css/base.css'
  5. %}
  6. <link rel="stylesheet" href="{{ asset_url }}" />
  7. {% endstylesheets %}

Jakiekolwiek modyfikacje naniesione w wyżej wymenionych stylach nie są widoczne na stronie. W źródłach serwisu mam za to wskazanie na css:
  1. <link rel="stylesheet" href="/css/01fbd0c.css" />
gromadzący zawartość powyższych 3 styli.

Wiem, że odpowiada za to użycie Assetic. Problem mam z odświeżeniem (ponownym wygenerowaniem) pliku /css/01fbd0c.css. Polecenie z konsoli:
$ php app/console assetic:dump --env=prod --no-debug
Powoduje co prawda utworzenie pliku 01fbd0c.css, lecz zapisuje go w /web/css/01fbd0c.css (twrzoąc folder web/ i podfolder web/css/) i dodatkowo plik 01fbd0c.css jest bez zawartości. Cała struktura serwisu umieszczona jest w folderze public_html/. Czyli mam:
public_html/app/
public_html/bundles/
public_html/css/
public_html/js/
public_html/src/
public_html/vendor/

W pliku app/config/config.yml mam ustawienia:
  1. # Assetic Configuration
  2. assetic:
  3. debug: %kernel.debug%
  4. read_from: %kernel.root_dir%/../web/
  5. write_to: %kernel.root_dir%/../web/
  6. use_controller: false
zmiana na:
  1. # Assetic Configuration
  2. assetic:
  3. debug: %kernel.debug%
  4. read_from: %kernel.root_dir%/../
  5. write_to: %kernel.root_dir%/../
  6. use_controller: false

nic nie daje. Jak sobie z tym poradzić, macie jakieś wskazówki?

Edit: Pozostawiłem zmiany w sekcji Assetic Configuration, zrestartowałęm Apache i dałem polecenie konsoli: asstetic:dump. Pliki w folderze /css/ zostały zaktualizowane, nie jestem pewien, czy wystarczył sam restart Apache, czy też polecenie assetic:dump zamiast poprzedniego. Sorry, za taki topic, ale usunąć go nie mogę, a dopiero od jakiegoś tygodnia zaczynam poznawać Symfony, stąd moja niewiedza smile.gif
spacja
Spróbuj coś takiego :

  1. {% stylesheets output='public_html/css/MojCSS.css' filter='cssrewrite' debug=false
  2. 'bundles/MOJ_BUNDLE/css/styl.css'
  3. 'bundles/MOJ_BUNDLE/css/styleOther.css'
  4. %}
  5. <link href="{{ asset_url }}" rel="stylesheet" media="screen" />
  6. {% endstylesheets %}


Następnie w konsoli :

Kod
php app/console assets:install
php app/console assetic:dump


Przy każdej zmianie wewnątrz pliku *.css musisz wykonać :dump - chyba, że użyjesz opcji z --symlink
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.