2010-11-15 5 views
0

J'essaie de passer une variable de gabarit à une variable comme paramètre, je ne sais pas comment cela fonctionne.Comment passer une variable de template à tag dans Django?

Par exemple

dans le modèle html

{{ question.author_id }} 

{% monetize_slot question.author_id "questioner" %} 

Ici, je peux voir le question.author_id show page web comme « 2 », mais lorsque je tente de le transmettre via la balise monetize_slot, il traiter comme une chaîne statique "question.author_id", pas une valeur dynamique 2. Est-ce que quelqu'un trouve une solution pour cela ici?

Merci,

Répondre

1
def monetize_slot(author_id, str): 
    return '%s: %d' % (str, author_id,) 
register.simple_tag(monetize_slot) 

Works pour moi ..

1

Essayez de définir la variable de modèle avec {% avec%}

{% with question.author_id as author %}
{% monetize_slot author "questioner" %} {% endwith %}

Questions connexes