Jinja2中的.render()与具有相同名称的函数不冲突?为什么?

时间:2014-08-10 22:48:43

标签: python google-app-engine jinja2

我正在参加Udacity的网络开发课程,其中教师将此代码用于他的Handler课程:

class Handler(webapp2.RequestHandler):
    def write(self, *a, **kw):
        self.response.out.write(*a, **kw)

    def render_str(self, template, **params):
        t = jinja_env.get_template(template)
        return t.render(**params)

    def render(self, template, **kw):
        self.write(self.render_str(template, **kw))

如你所见,他在.render(**params)中拨打render_str。我最近发现.render()是一个内置的Jinja2函数,所以它提出了一个问题:为什么内置的.render()不会与自定义render():发生冲突?如何将您的函数命名为内置函数,并且在同一个类中使用它们时不会遇到问题?

0 个答案:

没有答案