Ошибка шаблона Web.py: «сумма» не существует - PullRequest
3 голосов
/ 16 ноября 2009

Я использую встроенную функцию sum в шаблоне web.py и получаю следующую ошибку:

global name 'sum' is not defined

Исходный код ниже:

$if profs:
   $for prof in profs:
      $sum([1, 2, 3])

Я могу просто отлично использовать 'sum' на REPL Python в терминале.

В чем может быть проблема?

Спасибо, Jacob

Ответы [ 2 ]

4 голосов
/ 06 октября 2010

Добавьте функции в dict и передайте в качестве аргумента globals для визуализации:

render = web.template.render('templates/', globals={'sum': sum})

Тогда в вашем шаблоне вы можете просто использовать его:

$def with (numbers)

<h1>Numbers add to $sum(numbers)</h1>
0 голосов
/ 16 ноября 2009

Не весь код Python доступен в шаблонной нотации, попробуйте что-то вроде этого:

$if profs:
   $for prof in profs:
      $code:
         mysum = sum([1, 2, 3])
      $mysum
...