python - easy_thumbnails - La tabla thumbnail_kvstore no existe
easy-thumbnails (4)
Entonces, después de algunas investigaciones, parece que la versión 12.3
de sorl-thumbnail en PyPI y Github son diferentes.
Si descarga la fuente directamente desde PyPI , encontrará que el paquete no contiene ninguna migración. Esta es la razón por la que la tabla no existe aunque haya ejecutado todas las migraciones .
En Github, el archivo de migración para la versión 12.3
definitivamente existe.
Tienes tres opciones:
- Cree la tabla utilizando
./manage.py syncdb
(solo si está ejecutando Django 1.8 o inferior) - Instalar directamente desde Github para la versión
12.3
- Use la versión
12.4a1
de sorl-thumbnail que incluye migraciones
Puedes instalar desde Github directamente de la siguiente manera:
pip install git+git://github.com/mariocesar/[email protected]
sorl-thumbnail versión 12.3 admite hasta Django versión 1.8, donde aún existe el comando syncdb. Si está ejecutando Django 1.8 o una versión inferior, puede crear la tabla que falta ejecutando
python manage.py syncdb
No puedo ver la miniatura en mi plantilla. Me sale este error:
django.db.utils.ProgrammingError: (1146, "La tabla ''ia_website.thumbnail_kvstore'' no existe")
- Instalado sorl_thumbnail-12.3
- Estoy usando MariaDB 10.1.11
- No tengo migraciones que no se ejecuten.
- Puedo ver la imagen si no uso la etiqueta ''miniatura''
Aquí esta lo que hice
En settings.py:
INSTALLED_APPS = [ ... ''sorl.thumbnail'', ] THUMBNAIL_DEBUG = TRUE
En modelos.py
import sorl ... image = sorl.thumbnail.ImageField(upload_to=''thumbnails'', null=True)
En mi plantilla
{% thumbnail content.image "237x110" as im %} <img src="{{ im.url }}"> {% endthumbnail %}
Para mí, el error acaba de ocurrir al ejecutar dumpdata
.
Entonces, si encuentra este hilo aquí porque intentó usar dumpdata
, entonces excluir la aplicación de miniaturas probablemente sea una solución fácil para usted:
python manage.py dumpdata --exclude thumbnail
Por supuesto, debe seguir las otras respuestas, si desea limpiar su Django.
Si solo
manage.py makemigrations
no crea ninguna migración, intente
manage.py makemigrations thumbnail
manage.py migrate
Esto creará migraciones para la miniatura y luego las migrará. Esto funciona para mi. Estoy usando Django 1.9 y sorl.thumbnail 12.3.
Use la versión 12.3 de sorl-thumbnail. Sigue estos pasos
Quitar la versión actual
pip uninstall sorl-thumbnail
Instalar la versión 12.3
pip install git+git://github.com/mariocesar/[email protected]
Migraciones
python manage.py migrate