ImportError: ningún módulo llamado ''django.core.urlresolvers''
python-3.x python-3.5 (8)
Django 2.0 elimina el módulo
django.core.urlresolvers
, que se movió a
django.urls
en la versión 1.10.
En su lugar, debe cambiar cualquier importación para usar
django.urls
, así:
from django.urls import reverse
Tenga en cuenta que Django 2.0 elimina algunas características que anteriormente estaban en
django.core.urlresolvers
, por lo que es posible que
django.core.urlresolvers
realizar algunos cambios más antes de que su código funcione.
Consulte las
características en desuso en 1.9
para obtener detalles sobre esos cambios adicionales.
Hola, estoy trabajando en el proyecto Django donde necesito crear un formulario para entradas.
Traté de importar el
reverse
de
django.core.urlresolvers
.
Recibí un error:
line 2, in from django.core.urlresolvers import reverse ImportError: No module named ''django.core.urlresolvers''
Estoy usando Python 3.5.2, Django 2.0 y MySQL.
Para aquellos que podrían estar tratando de crear una Travis Build, la ruta predeterminada desde la que se instala Django desde el archivo
django_extensions
apunta a un repositorio cuyo módulo
django_extensions
no se ha actualizado.
La única solución, por ahora, es instalar desde la rama maestra usando pip.
Ahí es donde se hace el parche.
Pero por ahora, tendremos que esperar.
Mientras tanto, puede intentar esto, podría ayudar
- pip install git+https://github.com/chibisov/drf-extensions.git@master
- pip install git+https://github.com/django-extensions/django-extensions.git@master
Puede crear un enlace simbólico sin problema.
cd site-packages/django/core
ln -s ../urls/ urlresolvers
Y eso es todo.
Esto es útil para paquetes no actualizados que todavía buscan en la ruta anterior.
Si sus compilaciones en TravisCI fallan por esta razón en particular, puede resolver el problema actualizando las Extensiones de Django en sus requisitos.txt
pip install --upgrade django-extensions
Esto actualizará las extensiones para usar módulos Django 2+.
si desea importar al revés, impórtelo desde
django.urls
from django.urls import reverse
urlresolver se ha eliminado en la versión superior de Django. Actualice su instalación de django. Lo arreglé usando el siguiente comando.
pip install django==2.0 --upgrade
usa este:
from django.urls import reverse