django python-3.x python-3.5 django-2.0

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.


Necesita reemplazar todas las ocurrencias de:

from django.core.urlresolvers import reverse

a:

from django.urls import reverse

NOTA: Lo mismo se aplica a reverse_lazy

en Pycharm Cmd + Shift + R para iniciar el reemplazo en Path.


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