django отказва да разпознае статична папка?

АКТУАЛИЗАЦИЯ - чете правилно статичната папка. Ако направя файл test.css и след това се опитам да отида до http://myserver:8000/static/css/test.css, той ще го вземе.

Проблемът е, когато се опитвам да поставя нов bootstrap.css в тази папка. Той игнорира, че имам персонализиран и вместо това използва този, който е в папката python2.7/dist/mezzanine/.... Шаблоните нямат този проблем, когато ги събрах. base.html е персонализиран и използва моето, а не съхраненото копие по подразбиране, така че защо не прави това със статичните файлове?

Опитах много различни примери за stackoverflow и google, но изглежда, че моето приложение django/mezzanine не иска да разпознава статичните файлове, които използвам.

Статичните ми файлове се намират в „/opt/myproject/static/“

settings.py

PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))
STATIC_URL = "/static/"
STATIC_ROOT = os.path.join(PROJECT_ROOT, STATIC_URL.strip("/"))
STATIC_DIRS = (os.path.join(PROJECT_ROOT, "static"),)

Ще отбележа, че дори твърдото кодиране на пътя не помага -

STATIC_ROOT = "/opt/myproject/static/"
STATIC_DIRS = ("/opt/myproject/static",)

Base.html е Mezzanine по подразбиране, така че ето как се търсят статичните файлове -

<link rel="stylesheet" href="/bg{% static "css/bootstrap.css" %}">

Ако кодирам твърдо местоположението в css там, той няма да намери файла -

<link rel="stylesheet" href="/bg/opt/myproject/static/css/bootstrap.css">

Загубен съм защо не събира статичните файлове никъде освен мецанин началната папка. Ако направя findstatic, той никога не намира папката ми само по подразбиране -

python manage.py findstatic css/bootstrap.css
Found 'css/bootstrap.css' here:
  /usr/local/lib/python2.7/dist-packages/mezzanine/core/static/css/bootstrap.css

какво правя грешно

редактирайте, за да включите, че имам DEBUG = True

Направих urls.py трика -

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

urlpatterns += staticfiles_urlpatterns()

Също така направих python manage.py runserver --unsecure


person whoisearth    schedule 30.07.2014    source източник
comment
опитайте STATIC_DIRS = (os.path.join(PROJECT_ROOT, "static/"),) и STATIC_ROOT = os.path.join(PROJECT_ROOT, "static/") обърнете внимание на наклонената черта в края   -  person Ben    schedule 30.07.2014
comment
Нямам идея как е възможно това. Опитайте временно да премахнете mezzanine/core/static/css/bootstrap.css и вижте дали ще се върне към вашия персонализиран   -  person Ben    schedule 30.07.2014
comment
@Ben - Това е толкова странно. Преименувах го на bootstrap.old и да, тогава той взима моя персонализиран bootstrap.css в статичната папка на моите проекти. и става по-странно. Ако го преименувам обратно, той запазва моя персонализиран css. нещо се кешира някъде и не го освобождава, това е всичко, за което се сещам.   -  person whoisearth    schedule 31.07.2014
comment
странно.. опитайте да стартирате нов проект в даден момент, вижте дали има същите симптоми. Това или се консултирайте с дъска за уиджа, предполагам.   -  person Ben    schedule 31.07.2014


Отговори (1)


Стартирайте ./manage.py collectstatic това трябва да изтегли всичките ви нови статични файлове. Това също ще ви каже дали вашите STATIC_ROOT и STATIC_URL са зададени правилно или не.

person Abhinav Nair    schedule 30.07.2014
comment
collectstatic работи добре и копира всички файлове, но все още не разпознава моите променени файлове. - person whoisearth; 31.07.2014
comment
Внедрявате ли проекта си в производствена среда или това е просто разработка? - person Abhinav Nair; 31.07.2014
comment
актуализирайте тук, че проблемът е, че не е производство. Имам една производствена среда с помощта на mod_wsgi и статичните файлове са правилни. среда за разработка, това е толкова ефективен проблем, че не мога да тествам в разработката... - person whoisearth; 02.09.2014