【发布时间】:2011-10-13 03:04:09
【问题描述】:
模板代码:
{% extends 'some.html' %}
{% load tag %}
{% get_rate land contDetails.postcode contDetails.county title uid LsAff.aff_id LsAff.group_id %}
自定义模板标签:
from django import template
from process.utils.error_handler import debug_logger
from django.template import Library, Node, TemplateSyntaxError
class land(template.Node):
def __init__(self, var):
self.varname = template.Variable(var)
debug_logger().info(self.varname)
def render(self, context):
debug_logger().info("hello")
user = self.varname.resolve(context)
debug_logger().info("hello")
debug_logger().info(user)
return "somestring"
def get_rate(parser, token):
debug_logger().info("hell")
bits=token.split_contents()
var=bits[2]
debug_logger().info(var)
return land(var)
register = template.Library()
register.tag('get_rate', get_rate)
在上面的代码中 def render(self, context): 函数没有被调用。 直到 debug_logger().info(self.varname) 声明代码正常工作。
我错过了什么吗? 请帮助找到调用 render(self, context) 的解决方案
【问题讨论】:
-
你能添加你的模板代码吗?
-
还有其他错误信息吗?也许添加整个错误?
-
@cwoebker 我没有得到任何错误它没有返回任何东西。在调试时我发现渲染函数没有被调用。
-
好吧,我明白你的意思了,抱歉,早上太早了,我看看有没有发现