Pregunta

Tengo una línea en forma de Django:

{% for aa in my_array %}

que parece estar provocando este error:

  

error de plantilla

     

Capturó una excepción al renderizar:   Revertir para   'dev_env.profiles.views.viewPlan' con   argumentos '(' ',)' y palabra clave   No se encontraron los argumentos '{}'.

¿Qué significa realmente este mensaje de error?

Sospecho que cualquiera de las dos líneas es correcta, pero el mensaje de error es incorrecto. O el error es real, pero esta línea es una pista falsa.

¿Qué demonios debería estar buscando?

Actualización: Paulo ordenó esto, a continuación.

De hecho, tenía un {% url viewPlan planId%} a un par de líneas de distancia (por lo que la línea de error reportada era incorrecta), pero el error se activó porque planId estaba vacío en este caso .

¿Fue útil?

Solución

¿Tiene una vista llamada viewPlan con la que hace algo como esto en una plantilla:

{% url viewPlan %}

o algo como esto en una vista:

reverse('viewPlan')

Si haces eso y no tienes una línea que se vea así:

url(r'^whatever/url/

... en tu configuración de url, me imagino que ese es el error que estás recibiendo. De forma alternativa, y más probable, probablemente esté capturando un valor (quizás id o algo) en la URL del plan de visión pero no está pasando un argumento al invertir la url. Entonces, si está capturando algún valor en la expresión regular, como esto:

url(r'^plans/(\d+)

Debes llamarlo así:

{% url viewPlan 15 %}

O como esto:

reverse('viewPlan', args=[15]);

Donde 15 es obviamente lo que espera el valor capturado.

, 'dev_env.profiles.views.viewPlan', name="viewPlan"),

... en tu configuración de url, me imagino que ese es el error que estás recibiendo. De forma alternativa, y más probable, probablemente esté capturando un valor (quizás id o algo) en la URL del plan de visión pero no está pasando un argumento al invertir la url. Entonces, si está capturando algún valor en la expresión regular, como esto:

<*>

Debes llamarlo así:

<*>

O como esto:

<*>

Donde 15 es obviamente lo que espera el valor capturado.

, 'dev_env.profiles.views.viewPlan', name="viewPlan"),

Debes llamarlo así:

<*>

O como esto:

<*>

Donde 15 es obviamente lo que espera el valor capturado.

, 'dev_env.profiles.views.viewPlan', name="viewPlan"),

... en tu configuración de url, me imagino que ese es el error que estás recibiendo. De forma alternativa, y más probable, probablemente esté capturando un valor (quizás id o algo) en la URL del plan de visión pero no está pasando un argumento al invertir la url. Entonces, si está capturando algún valor en la expresión regular, como esto:

<*>

Debes llamarlo así:

<*>

O como esto:

<*>

Donde 15 es obviamente lo que espera el valor capturado.

Otros consejos

Tuve el mismo problema. En mi caso, me olvidé de agregar las URL de la aplicación secundaria en el archivo principal urls.py:

urlpatterns = [
    re_path("admin/", admin.site.urls),
    re_path(r"^core/", include("core.urls")),
    re_path(r"^<*>quot;, welcome, name="welcome")
]
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top