python - español - Django-La urlconf incluida no tiene ningún patrón en ella
django wikipedia (4)
En mi caso recibí este error durante el despliegue. Apache siguió dándome el error "AH01630: cliente denegado por la configuración del servidor". Esto indicaba que estaba mal con la configuración de apache. Para ayudar a solucionar problemas, había activado Debug = True en settings.py cuando vi este error.
Al final tuve que agregar una nueva directiva a la configuración de archivos estáticos dentro de apache config. Cuando los archivos estáticos no eran accesibles y la configuración de depuración en django se configuraba en verdadero, este error se activaba de alguna manera.
Mi sitio web, que estaba funcionando antes, de repente comenzó a romper con el error
"Configurado incorrectamente en / El urlconf incluido resume.urls no tiene ningún patrón"
La base del proyecto se llama curriculum vitae. En settings.py he configurado
ROOT_URLCONF = ''resume.urls''
Aquí está mi resume.urls, que se encuentra en el directorio raíz del proyecto.
from django.conf.urls.defaults import *
# Uncomment the next two lines to enable the admin:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('''',
# Example:
# (r''^resume/'', include(''resume.foo.urls'')),
# Uncomment the admin/doc line below and add ''django.contrib.admindocs''
# to INSTALLED_APPS to enable admin documentation:
(r''^admin/doc/'', include(''django.contrib.admindocs.urls'')),
# Uncomment the next line to enable the admin:
(r''^admin/'', include(admin.site.urls)),
(r''^accounts/login/$'', ''django.contrib.auth.views.login''),
#(r''^employer/'', include(students.urls)),
(r''^ajax/'', include(''urls.ajax'')),
(r''^student/'', include(''students.urls'')),
(r''^club/(?P<object_id>/d+)/$'', ''resume.students.views.club_detail''),
(r''^company/(?P<object_id>/d+)/$'', ''resume.students.views.company_detail''),
(r''^program/(?P<object_id>/d+)/$'', ''resume.students.views.program_detail''),
(r''^course/(?P<object_id>/d+)/$'', ''resume.students.views.course_detail''),
(r''^career/(?P<object_id>/d+)/$'', ''resume.students.views.career_detail''),
(r''^site_media/(?P<path>.*)$'', ''django.views.static.serve'', {''document_root'': ''C:/code/django/resume/media''}),
)
Tengo una carpeta llamada urls y un archivo ajax.py dentro. (También creé un init .py en blanco en la misma carpeta para que las urls sean reconocidas). Esto es ajax.py.
from django.conf.urls.defaults import *
urlpatterns = patterns('''',
(r''^star/(?P<object_id>/d+)$'', ''resume.students.ajax-calls.star''),
)
Alguien sabe lo que está mal? Esto me está volviendo loca.
Gracias,
Recibí este error al intentar revertir (e reverse_lazy) usando RedirectView y parámetros de la url. El código ofensivo se veía así:
from django.views.generic import RedirectView
from django.core.urlresolvers import reverse
url(r''^(?P<location_id>/d+)/$'', RedirectView.as_view(url=reverse(''dailyreport_location'', args=[''%(location_id)s'', ]))),
La solución es usar esta url en los patrones de URL:
from django.views.generic import RedirectView
url(r''^(?P<location_id>/d+)/$'', RedirectView.as_view(url=''/statistics/dailyreport/%(location_id)s/'')),
RESPUESTA : La solución para que aún puedas usar el nombre del patrón de url:
from django.core.urlresolvers import reverse
from django.http import HttpResponseRedirect
urlpatterns = patterns('''',
....
url(r''^(?P<location_id>/d+)/$'', lambda x, location_id: HttpResponseRedirect(reverse(''dailyreport_location'', args=[location_id])), name=''location_stats_redirect''),
....
)
TL; DR: probablemente necesites usar reverse_lazy()
lugar de reverse()
Si su urls.py
importa una vista basada en clase que usa reverse()
, obtendrá este error; utilizando reverse_lazy()
lo arreglará.
Para mí, el error.
El urlconf project.urls incluido no tiene ningún patrón en él.
fue arrojado porque:
-
project.urls
importadosapp.urls
-
app.urls
importados -
app.views
tenía una vista basada en clase que usabareverse
-
reverse
importaproject.urls
, lo que resulta en una dependencia circular.
El uso de reverse_lazy
lugar de reverse
resolvió el problema: esto pospuso la reversión de la URL hasta que se necesitó por primera vez en el tiempo de ejecución.
Moraleja: siempre use reverse_lazy
si necesita revertir antes de que se inicie la aplicación.
Verifique en sus patrones las declaraciones de inclusión que apuntan a módulos inexistentes o módulos que no tienen un miembro urlpatterns
. Veo que tiene una include(''urls.ajax'')
que puede no ser correcta. ¿Debería ser ajax.urls
?