Мой пользовательский тег шаблона в Django отображает переменные шаблона в виде строки - PullRequest
0 голосов
/ 17 мая 2011

Использование тега -
{% for x in posts %}<br> {% render_con_form for shastra x.id %}

Вместо передачи значения x.id, которое будет целым числом, которое он передает, - x.id как есть.
КакЯ это исправлю?

Правка -

def render(self, context):
    if self.app == 'broadcast' or self.app == 'shastra':
        form = CommentsForm()   
    str = render_to_string('comments/form.html', {'form' : form, 'app' : self.app, 'id' : self.id})
    return str

def __init__(self, app, id):<br> self.app = str(app)<br> self.id = Variable(id)

1 Ответ

0 голосов
/ 17 мая 2011

попробуйте использовать решение принятого ответа ниже:

Django-Template: Получить переменные в блоке тегов!

Внутри тега шаблона

// obj is x.id
def __init__(self, obj):
    from django.template import Variable
    // get the variable value
    self.id = Variable(obj)

def render(self, context):
    id = self.id.resolve(context)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...