9
私はsimple_tagを使ってコンテキスト変数を設定しようとしています。私は、このdoesntのは、変数を設定するが、私は@register.tag
と非常に似た何かをする場合、それは動作しますが、オブジェクトパラメータが通過しないDjangoのsimple_tagとコンテキスト変数の設定
from django import template
@register.simple_tag(takes_context=True)
def somefunction(context, obj):
return set_context_vars(obj)
class set_context_vars(template.Node):
def __init__(self, obj):
self.object = obj
def render(self, context):
context['var'] = 'somevar'
return ''
のジャンゴのトランクバージョンを使用しています...
感謝を!
おかげで、あなたは答えはジャンゴの開発版は 'simple_tag''に似てassignment_tag'が含まれていることを – neolaser
注感謝完璧とずっとでしたよしかし、 'as variablename'が実装されています:https://docs.djangoproject.com/en/dev/howto/custom-template-tags/#assignment-tags –
ああ、私は決して前に' assignment_tag'を越えて走ってはいけません。ニフティ。将来の読者のためのアップデート: 'assignment_tag'は、Djangoバージョン> = 1.4で使用できるようになりました(これは、上記のコメントが作成された時のdevだと思います)。 – chucksmash