2012-06-12 14 views
7

Chcę użyć Compass, aby uprościć zadanie pisania CSS w mojej aplikacji Django. Ale nie wiem jak to skonfigurować.Django i kompas z wieloma aplikacjami

widzę django-kompresor posiada wsparcie dla SASS, ale w celu użycia kompasu Musiałem zrzucić _*.scss plików do mojego obszaru roboczego (Django 1.4), ponieważ jest to katalog roboczy, gdy django-sprężarka pracuje scss poleceń.

Eric Meyer's approach brzmi sensowne (skompilować .scss pliki .css podczas rozwoju i zobowiązać się do SCM), ale to nie jest oczywiste, w jaki sposób mogę korzystać z narzędzi SASS/Compass skompilować .scss w wielu aplikacjach (zarówno wielokrotnego użytku, a nie wielokrotnego użytku) w Django przestrzeń robocza.

Przechowuję statyczne pliki arkuszy stylów dla każdej aplikacji w <app>/static/<app>/css/.

Kwestie mam są to:

  1. @import nie działa w aplikacjach
  2. Umieszczenie _*.scss plików w obszarze roboczym jest niedopuszczalne
  3. Running compass watch w obszarze roboczym nie powiedzie się z:

    Nic do kompilacji. Jeśli próbujesz uruchomić nowy projekt, to opuściłeś argument katalogu.

  4. Korzystanie @include background(...) zawiedzie:

    Syntax error: Undefined operacja: „-compass-lista-size (compact (#CCCCCC false false false false false false false false false)) gt 1"

+0

Czy _ *. Pliki scss są częściami? Jeśli tak, dlaczego nie należy ich uwzględnić w obszarze roboczym? – stellarchariot

Odpowiedz

0

Być może można użyć narzędzia takie jak Fabric (lub nawet skrypt bash) do czynienia z kompilacją i umieszczania plików. Jeśli chodzi o komendę compass watch, może być konieczne ręczne podanie dodatkowych parametrów dla lokalizacji plików .scss i .css, aby pomyślnie osiągnąć wartość watch (sprawdź dokumentację pomocy, uruchamiając compass help watch).

1

Odkryłem, że znacznie łatwiej jest oddzielić Django od Sass. Możesz nadal używać ich jednocześnie, ale może wymagać innego okna terminala. W końcu jednak chodzi o obsługę skompilowanych zasobów.

Zwykle konfiguruję swój projekt z katalogiem/src/w katalogu głównym, w którym umieszczam moje pliki Sass. Skonfigurowałem także projekt Compass w tym katalogu głównym z skompilowanymi arkuszami stylów przechodzącymi w/static/css /.

Oczywiście to może stać się problematyczne, jeśli masz dużo aplikacji w ramach projektu, jak chcesz albo chcą tworzyć katalogi wniosek w root/static/lub stworzyć kolejny projekt kompas w/

Normalnie używam Grunt, aby skompilować moje pliki Sass/Compass, więc jest nieco bardziej skomplikowany, chociaż łatwy do odtworzenia.

Post Frank Wilesa Ultimate Front End Development Setup jest bardzo zbliżony do tego, w jaki sposób konfiguruję swoje projekty, ale pomijam użycie kompresora django, ponieważ uważam, że dodanie oprogramowania pośredniczącego jest niepotrzebne i oczywiście używam Grunt zamiast Gulpa.

Powiązane problemy