Форум сайта python.su
Что-то туплю…
На странице не отображаются изображения, т.к. пути не находятся.
Сами изображения в папке имеются.
В шаблоне относительные пути <img src=“img/picture.png”>
Шаблоны лежат в папке djproject/templates/myapp
Приложение в папке djproject/myapp
Папку img располагал во всех возможных местах, безрезультатно:
djproject/img
djproject/myapp/img
djproject/templates/myapp/img
Офлайн
Офлайн
DaevaornВсё, что предписано документацией, сделал.
http://docs.djangoproject.com/en/dev/howto/static-files/#howto-static-files
import os.path
TEMPLATE_DIR =os.path.join(os.path.dirname(__file__), 'templates').replace('\\','/')
TEMPLATE_DIRS = (
TEMPLATE_DIR,
)
MEDIA_ROOT = TEMPLATE_DIR.join('myapp/images/') # вот на этой строке
STATIC_DOC_ROOT = MEDIA_ROOT
MEDIA_URL = '/images/'
Отредактировано (Июль 20, 2009 15:06:53)
Офлайн
os.path.join возвращает строку.
Ошибка у вас в том, что join у строки немного другую функцию выполняет.
MEDIA_ROOT = os.path.join(TEMPLATE_DIR, 'myapp/images/')
Офлайн
DaevaornИсправил. Всё равно не работает.
os.path.join возвращает строку.
Ошибка у вас в том, что join у строки немного другую функцию выполняет.MEDIA_ROOT = os.path.join(TEMPLATE_DIR, 'myapp/images/')
TEMPLATE_LOADERS = (
# 'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)
import os.path
TEMPLATE_DIR =''.join(os.path.join(os.path.dirname(__file__), 'myapp/templates').replace('\\','/'))
TEMPLATE_DIRS = (
TEMPLATE_DIR,
)
MEDIA_ROOT = os.path.join(TEMPLATE_DIR, '/images/')
STATIC_DOC_ROOT = MEDIA_ROOT
MEDIA_URL = '/images/'
urlpatterns = patterns('',
(r'^images/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_DOC_ROOT}),
(r'^$' , 'myapp.views.index'),
...
...
Офлайн
Боюсь, что ошибка всё ещё в строке:
MEDIA_ROOT = os.path.join(TEMPLATE_DIR, '/images/')
Офлайн
DaevaornСвершилось!
Уберите первый слеш из “/images/” и скорей всего заработает.
Офлайн
Свершилось, но странные дела творятся…
Нажимаю подряд несколько раз обновление страницы в тулбоксе браузера и после каждого обновления внешний вид страницы меняется. Изображения вразнобой то появляются, то пропадают, то опять появляются. Нет стабильности. В чем может быть дело?
Отредактировано (Июль 20, 2009 19:23:05)
Офлайн
Nick2009Возможно в вашем коде?
Нет стабильности. В чем может быть дело?
Офлайн
Кроме папки изображений /img/ у меня еще есть другая статика /css/ и /flash/. Я поместил их в общую папку
/s/img/
/s/css/
/s/flash/
,возможно будут ещё,
и теперь не могу настроить статику на папку /s/, чтобы на страницах можно было ссылаться /s/…/file.ext.
Разные регулярки пробовал, не получается.
Как должны измениться предыдущие настройки в данном случае?
Отредактировано (Июль 21, 2009 11:35:42)
Офлайн