Реверс для 'code_front' с аргументами '()' и аргументами ключевых слов '{' category_slug ': u'code'} 'не найден - PullRequest
2 голосов
/ 25 августа 2009

Я получаю следующее сообщение об ошибке:

Reverse for 'code_front' with arguments '()' and keyword arguments '{'category_slug': u'code'}' not found.

Я новичок в этом, пожалуйста, помогите.

Ответы [ 2 ]

10 голосов
/ 25 августа 2009

Ошибка, которую вы получаете, заключается в том, что в вашем urls.py нет совпадений для вида и параметров, которые вы используете.

Пример:

Если ваш urls.py выглядит так:

urlpatterns = patterns('',
    url(r'^YOUR_PATTERN/(?P<PARAMETER>.*)', your_view, name='code_front'),
)

Вы можете изменить его URL следующим образом:

В шаблоне:

  • Использование значения напрямую:

    {% url code_front 'some_value' %}

  • Вы можете использовать переменные в качестве значений параметров:

    {% url code_front variable %}

  • Использование нескольких параметров (если они нужны для просмотра):

    {% url code_front variable, another_variable %}

  • Или используя именованные параметры:

    {% url code_front parameter=variable %}

То же самое можно сделать в вашем коде Python:

  • reverse('code\_front', args=['some_value'])
  • reverse('code\_front', args=[variable])
  • reverse('code\_front', args=[variable, another_variable])
  • reverse('code\_front', kwargs={'parameter': variable})

Вам нужно будет импортировать функцию reverse:

from django.core.urlresolvers import reverse

1 голос
/ 25 августа 2009

Некоторые основы:

  1. Убедитесь, что вы передаете правильные аргументы для функции представления, в которую преобразуется URL.
  2. Убедитесь, что функция реверса получает только одно совпадение, если нет, присвойте своему URL уникальное имя, чтобы изменить его.
  3. Если вы используете get_absolute_url / permalink, убедитесь, что вы передали правильные параметры.
  4. Убедитесь, что code_front существует в качестве допустимого элемента для обратного просмотра.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...