2013-06-09 2 views
-2

Я более свежий в Django 1.5, и у меня есть некоторые проблемы с изображениями.Django 1.5, изображения не отображаются, статические файлы

У меня есть изображения в моей папке (C: \ Users \ Neitrosha \ PycharmProjects \ ecomstore \ static \ images \ products) Есть две папки - «миниатюры» и «основные» для хранения изображений.

моего settings.py является:

STATIC_URL = '/static/' 


STATICFILES_DIRS = (
    'C:\Users\Neitrosha\PycharmProjects\ecomstore\static', 
} 

TEMPLATE_CONTEXT_PROCESSORS = ("django.contrib.auth.context_processors.auth", 
    "django.core.context_processors.debug", 
    "django.core.context_processors.i18n", 
    "django.core.context_processors.media", 
    "django.core.context_processors.static", 
    "utils.context_processors.ecomstore", 
) 

Я использую этот код на моем 'category.html':

{% extends "catalog.html" %} 
    {% block content %} 
    {% load staticfiles %} 
    <h1>{{ c.name }}</h1> 
    {{ c.description }} 
    <br /><br /> 

    {% for p in products %} 
     <div class="product_thumbnail"> 
     <a href="{{ p.get_absolute_url }}"> 
      <img src="{{ STATIC_URL }}images/products/thumbnails/{{p.image}}" alt="{{ p.name }}" class="bn" /> 
      <br /> 
      {{ p.name }} 
     </a> 
</div> 

{% endfor %} 
{% endblock %} 

Например, мой браузер может видеть Сформированные ссылки таким образом:

<div class="product_image" > 
    <img src="/static/images/products/main/super_guitar.jpg" alt="Super guitar" /> 
</div> 

Но это все еще не работает.

Как это сделать?

Заранее спасибо.

P.S. Возможно, из-за этой строки в моей модели

image = models.CharField(max_length=50) 

? Но я просто пишу там название изображения.

+0

Что вы имеете в виду «не работает»? – kirelagin

+0

Подождите, как ваш вопрос связан с загрузкой файлов? – kirelagin

+0

Нет изображений, отображаемых – Neitrosha

ответ

0

Есть две вещей неправильно с этим кодом:

STATICFILES_DIRS = (
    'C:\Users\Neitrosha\PycharmProjects\ecomstore\static', 
} 

Сначала вы открываете с ( и близкими с несоответствующим }.

Во-вторых, \ необходимо экранировать в строках python. Это, вероятно, следует:

STATICFILES_DIRS = (
    'C:\\Users\\Neitrosha\\PycharmProjects\\ecomstore\\static', 
) 

или

STATICFILES_DIRS = (
    r'C:\Users\Neitrosha\PycharmProjects\ecomstore\static', 
) 
+0

Raw Strings всегда лучше. –

+0

Обновленный ответ. – korylprince

+0

Первый, мой был там, да. Второй - я сделал это, но есть тот же результат - сломанное изображение, я не вижу их. Я действительно не знаю, что я должен делать. Я проверил, есть ли у меня «render_to_response» в моей модели - это так. Но есть интересная деталь - если я пишу вместо Neitrosha

Смежные вопросы