テンプレートにサムネイルを表示できません。このエラーが発生します:
Django.db.utils.ProgrammingError:(1146、 "テーブル 'ia_website.thumbnail_kvstore'は存在しません")
これが私がしたことです
Settings.py内:
INSTALLED_APPS = [
...
'sorl.thumbnail',
]
THUMBNAIL_DEBUG = TRUE
Models.pyで
import sorl
...
image = sorl.thumbnail.ImageField(upload_to='thumbnails', null=True)
私のテンプレートで
{% thumbnail content.image "237x110" as im %}
<img src="{{ im.url }}">
{% endthumbnail %}
したがって、いくつかの調査の結果、PyPIとGithubのsorl-thumbnailのバージョン12.3
が異なるように見えます。
PyPI -からソースを直接ダウンロードすると、パッケージに移行が含まれていないことがわかります。 これが、すべての移行を実行したにもかかわらずテーブルが存在しない理由です。
Githubでは、 移行ファイル バージョン12.3
の場合は間違いなく存在します。
3つのオプションがあります。
./manage.py syncdb
を使用してテーブルを作成します(Django 1.8以下を実行している場合のみ)12.3
のGithubから直接インストールします12.4a1
のsorl-thumbnailを使用する次のように、Githubから直接インストールできます。
pip install git+git://github.com/mariocesar/[email protected]
sorl-thumbnailバージョン12.3は、最大Djangoバージョン1.8をサポートし、syncdbコマンドは引き続き存在します。Django 1.8以下を実行している場合は、作成できます。実行して不足しているテーブル
python manage.py syncdb
ただなら
manage.py makemigrations
移行は作成されません。試してください
manage.py makemigrations thumbnail
manage.py migrate
これにより、サムネイルの移行が作成され、移行されます。わたしにはできる。 Django 1.9およびsorl.thumbnail12.3を使用しています。
Sorl-thumbnailのバージョン12.3を使用します。この手順に従ってください
実際のバージョンを削除する
pip uninstall sorl-thumbnail
バージョン12.3をインストールします
pip install git+git://github.com/mariocesar/[email protected]
移行
python manage.py migrate
私にとっては、dumpdata
の実行中にエラーが発生しました。
したがって、dumpdata
を使用しようとしたためにこのスレッドがここにある場合は、サムネイルアプリを除外することで簡単に回避できます。
python manage.py dumpdata --exclude thumbnail
もちろん、Djangoをクリーンにしたい場合は、他の回答に従う必要があります。