Używam aplikacji Django 1.3.1 i contrib.collectstatic
do zarządzania moimi statycznymi plikami.Nadpisywanie danych Django
Moja struktura projektu jest
myproject
- settings.py
- static-media
- urls.py
- media
- manage.py
gdzie static-media
jest folder zawierający pliki statyczne dla tego projektu. W moim settings.py mam:
PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
STATIC_ROOT = os.path.join(PROJECT_PATH, "static")+'/'
STATIC_URL = "/static/"
STATICFILES_DIRS = (
os.path.join(PROJECT_PATH, 'static-media'),
)
Używam admin_tools aby zmienić układ administratora. Jednak chcę zastąpić określony plik css (theming.css) z narzędzi administracyjnych. Tak więc w moim folderze mediów statycznych umieszczam admin_tools/css/theming.css. Po pierwszym uruchomieniu python manage.py collectstatic
działa zgodnie z oczekiwaniami, ignorując domyślny plik theming.css w elemencie admin_tools i używając tego, który zdefiniowałem na nośnikach statycznych. Niestety, jeśli ponownie uruchomię komendę, zastępuje ona moje css i dodaje wartość domyślną.
Oto wyjście dla python manage.py findstatic admin_tools/css/theming.css
:
Found 'admin_tools/css/theming.css' here:
/home/paulo/Desktop/Projects/zennetwork/prd/zennetwork/static-media/admin_tools/css/theming.css
/home/paulo/Desktop/Projects/zennetwork/prd/lib/python2.7/site-packages/admin_tools/theming/static/admin_tools/css/theming.css
Każda pomoc jest mile widziana. Dzięki.