我是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 :(得分: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',
)