вызов функции python из тегов шаблонов django - PullRequest
0 голосов
/ 08 марта 2011

Как мы можем передать переменную из тега шаблона django, т.е. я хочу сделать что-то вроде этого

  {{emp.get_names('a')}}

emp - это объект, который я передаю из моих представлений

 class Emp(models.Model):
   name = models.CharField(max_length=255, unique=True)
   address1 = models.CharField(max_length=255)

   def get_names(self,var):
      logging.debug(var)          
      names = {}

Ответы [ 3 ]

4 голосов
/ 08 марта 2011

Вы не можете вызвать функцию, которая принимает такой параметр.Может быть, написание пользовательского тега шаблона может помочь, но зачем вам это делать в шаблоне, а не в представлении ??

Пользовательские теги шаблонов

1 голос
/ 08 марта 2011

Шаблоны Django предназначены для того, чтобы люди не могли делать то, что вы пытаетесь сделать.Используйте тег шаблона.

0 голосов
/ 08 марта 2011

Похоже, что он не поддерживает вызов функции в шаблоне по умолчанию, как этот.
может быть, вы можете использовать некоторые встроенные теги, такие как {{'a'|get_names}}
Вы можете попробовать использовать шаблон Jinja2, который позволит вам написать в нем код Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...