【发布时间】:2014-10-17 13:51:05
【问题描述】:
我正在使用 sorl 缩略图在视图中生成缩略图。我安装了
mysql-python
Django==1.6.1
Pillow==2.3
sorl-thumbnail==11.12.1b
我已经添加了
THUMBNAIL_DEBUG = DEBUG
和
'sorl.thumbnail', 到 settings.py 中的 INSTALLED_APPS。
然
./manage.py syncdb
它在我的“档案”数据库中创建了“thumbnail.kvstore”表,并在我的模型中包含以下内容:
from sorl.thumbnail import ImageField
class relic(models.Model):
...
photo = ImageField(upload_to='photo', blank=True, null=True)
在我看来我有
# all the relics for the given historical site (hsite_id)
def relicList(request, hsite_id):
print hsite_id
theSite = historical_site.objects.get(pk=hsite_id)
relicSet = theSite.relic_set.all()
return render_to_response('archives/relic_list.html', locals())
# end relicList
在我的模板中
{% extends "base.html" %}
{% load thumbnail %}
{% load staticfiles %}
{% for relic in relicSet %}
<!-- alternate colours with the classes defined in the style sheet -->
<tr class={% cycle "odd" "even" %}>
<td>{{ relic.name }}</td><td>{{ relic.description }}</td>
<td>
{% if relic.photo %}
<a href="{{ relic.photo.url }}">
{% thumbnail relic.photo "100x100" crop="center" as im %}
<img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}
</a>
{% endif %}
</td>
</tr>
{% endfor %}
加载模板给了我
ProgrammingError: (1146, "Table 'archives.sessioncache' doesn't exist")
尝试了一些我尝试过的其他事情
(archeologist)jason:>./manage.py shell
>>> from achives.models import *
>>> from sorl.thumbnail import get_thumbnail
>>> myRelics = relic.objects.all()
>>> for r in myRelics:
... print r.photo
etc
>>> print r.photo
photo/image_9.jpg
>>> im = get_thumbnail(r.photo, '100x100', crop='center')
我遇到同样的错误
ProgrammingError: (1146, "Table 'archives.sessioncache' doesn't exist")
我没有安装 memcached,并且我已经成功地使用了另一个使用 postgres 的项目中的缩略图。我不想使用 memcached,因为这是一个小项目。我错过了什么?
【问题讨论】:
标签: django pillow sorl-thumbnail