Найти - Пользователи
Полная версия: Снова про статичные файлы ...
Начало » Django » Снова про статичные файлы ...
1
erjemin
Да, я читал местные топики про статичные файлы в Django … не помогло…

Итак делаю и запускаю все из под PyCharm … и имеет место быть вот такая конструкция:

from django.http import HttpResponse, Http404
import PIL                                      # библиоткеа работы с графикой
from PIL import Image, ImageDraw
def indicator ( request ) :
    szHTML = ""
    image = Image.new("RGBA", (320,320), (0,0,0,0))
    draw = ImageDraw.Draw(image)
    draw.ellipse( (10,10,300,300), fill="red", outline="blue")
    del draw
    image.save("/как-то-путь/django/invest_mice/static/test.png", "PNG")
    szHTML += "<br /><img src='/static/test.png' />"
    return HttpResponse ( szHTML )

Соответственно в STATIC.PY пишу:

STATIC_ROOT = '/как-то-путь/django/invest_mice/static/'
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    '/как-то-путь/django/invest_mice/static',
)

Картинка в папочке появляется но вызывать ее не получается. Обращение по:

http://127.0.0.1:8000/static/img/test.png

Отдает текстовое сообщение:

A server error occurred. Please contact the administrator.

Никаких 404 и прочего… Напоминаю, что все это из под PyCharm…

В какой бубен стучать?
FishHook
>>>Напоминаю, что все это из под PyCharm…
да он то ту при чем?
сюда вместо
STATICFILES_DIRS = (
    '/как-то-путь/django/invest_mice/static',
)
STATICFILES_DIRS = (
    'static',
)
erjemin
Ничего не изменилось… Если там ничего не писать – результат тот-же… Если пишем:

STATICFILES_DIRS = (
    '',
)

Вылетает по 404 при вызове картинки…
erjemin
Упс… если

STATICFILES_DIRS = ( )

То тоже 404 … Блин. что ей туда надо!?
ilnur
django 1.4

STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    'путь к папке со статикой',
)

соответственнол в html
<img src='/static/img.png'>
все работает отлично

erjemin
Спасибо! Так сработало! И, кстати, вложенные папки тоже автоматом подцепились…
inoks
ilnur
<img src='/static/img.png'>

правильнее так:

<img src='{{ STATIC_URL }}img.png'>

чтобы при случае переноса статики в другое место не пришлось менять шаблоны
ilnur
inoks
чтобы при случае переноса статики в другое место не пришлось менять шаблоны
если статика перейдет в другую папку, её надо просто прописать в
STATICFILES_DIRS = (
    'путь к папке со статикой',
)
в шаблонах ничего менять не надо.

ещё не проверил. по моему все правильно написал
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB