Миниатюра таблицы kvstore не существует
Я не могу получить миниатюру, отображаемую в моем шаблоне. Я получаю эту ошибку:
Джанго.децибел.а utils.ProgrammingError: (1146, "Table' ia_website.thumbnail_kvstore "не существует")
- установлен sorl_thumbnail-12.3
- я использую MariaDB 10.1.11
- у меня нет миграции, которая не выполняется
- я могу видеть изображение, если я не использую тег "эскиз"
вот что я сделал
-
In settings.py:
INSTALLED_APPS = [ ... 'sorl.thumbnail', ] THUMBNAIL_DEBUG = TRUE
-
In models.py
import sorl ... image = sorl.thumbnail.ImageField(upload_to='thumbnails', null=True)
-
В моем шаблоне
{% thumbnail content.image "237x110" as im %} <img src="{{ im.url }}"> {% endthumbnail %}
4 ответов
Итак, после некоторых исследований, это выглядит как версия 12.3
из sorl-миниатюры на PyPI и Github разные!
если вы загружаете источник непосредственно из PyPI - вы обнаружите, что пакет не содержит каких-либо миграций. это причина, по которой таблица не существует, даже если вы выполнили все миграции.
На Github,миграция файлом для версии 12.3
наверняка существует.
вы есть три варианта:
- создать таблицу с помощью
./manage.py syncdb
(только если вы используете Django 1.8 или ниже) - установить непосредственно из Github для версии
12.3
- версия
12.4a1
sorl-миниатюры, которая включает в себя миграции
вы можете установить из Github напрямую следующим образом:
pip install git+git://github.com/mariocesar/sorl-thumbnail@v12.3
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.эскиз 12.3.
используйте версию 12.3 sorl-thumbnail. Следуйте этим шагам
удалить текущую версию
pip uninstall sorl-thumbnail
установка версии 12.3
pip install git+git://github.com/mariocesar/sorl-thumbnail@v12.3
миграция
python manage.py migrate
для меня ошибка только что произошла при выполнении dumpdata
.
поэтому, если вы найдете этот поток здесь, потому что вы пытались использовать dumpdata
, то исключая приложение эскиза, вероятно, будет легким обходным путем для вас:
python manage.py dumpdata --exclude thumbnail
конечно, вы должны следовать другим ответам, Если вы хотите, чтобы ваш Django чистый.