Тег включения django ошибка kwargs говорит "функция принимает 2 аргумента"

Я написал тег включения, он принимает контекст и *args и **kwargs

@register.inclusion_tag('template.html', takes_context=True)
def my_tag(a, b, *args, **kwargs):
    print 'Kwargs: '
    return .....

шаблон:

  {% my_tag 1 1 2 page=10 %}

Error message:
Request Method:     GET
Request URL:    http://localhost:8000/
Django Version:     1.3.1
Exception Type:     TemplateSyntaxError
Exception Value:    

my_tag takes 2 arguments

что не так в моем коде?

2 ответа

Так как вы положили takes_context=Trueпервый параметр функции должен быть context,

Да, я обнаружил проблему: проблема *args и **kwargs реализованы в Django 1.4, но я пробовал эту функцию в Django 1.3.1, поэтому он показывает ошибки такого рода

для большей ясности посмотрите примечания к выпуску Django 1.4. Примечания к выпуску Django1.4

Другие вопросы по тегам