Python Django模板上下文不适用于导入的类

Python Django模板上下文不适用于导入的类,python,django,google-app-engine,templates,Python,Django,Google App Engine,Templates,我在appengine上使用Django的模板,并且遇到了一个问题,即我从另一个包导入的类不能正确地提供给模板上下文。上下文在代码中设置,但在模板中呈现后为空 广义地说,这就是代码。prop1在下面第一个示例中的模板中不可用,但在第二个示例中可用。MyClass在这两种情况下都是相同的 这不起作用: from module import MyClass context = MyClass() self.response.out.write(template.render(path, contex

我在appengine上使用Django的模板,并且遇到了一个问题,即我从另一个包导入的类不能正确地提供给模板上下文。上下文在代码中设置,但在模板中呈现后为空

广义地说,这就是代码。prop1在下面第一个示例中的模板中不可用,但在第二个示例中可用。MyClass在这两种情况下都是相同的

这不起作用:

from module import MyClass
context = MyClass()
self.response.out.write(template.render(path, context))
这是:

class MyClass(object):
    def __init__(self):
        self.prop1 = "prop1"

context = MyClass()
self.response.out.write(template.render(path, context))
如果我在上面的代码中记录上下文,我会得到:

<module.MyClass object at 0x107b1e450>

导入时,以及:

<__main__.MyClass object at 0x103759390>

当它在同一个文件中定义时


关于什么可能导致这种行为的任何线索?

如果您需要自定义上下文类,它应该扩展Django的
BaseContext
。否则,它将不会具有常规上下文的默认行为

from django.template import BaseContext

class MyClass(BaseContext):
    # Your stuff here
    pass

如果您需要自定义上下文类,它应该扩展Django的
BaseContext
。否则,它将不会具有常规上下文的默认行为

from django.template import BaseContext

class MyClass(BaseContext):
    # Your stuff here
    pass

您所说的未正确提供是什么意思?上下文为“无”,或者至少呈现为空。您是否可以添加导致问题的模板代码部分?嗯,这将是{{prop1}。没有显示任何内容。您是否尝试使用{%debug%}模板标记(如果它在AppEngine上有效-在Django上有效)并查看出现了什么情况?但是,您是否有特定的原因不使用通常的dict作为上下文?您所说的未正确提供是什么意思?上下文是无的,或者至少呈现为空的。您是否可以添加导致问题的模板代码部分?嗯,那就是{{prop1}。没有显示任何内容。您是否尝试使用{%debug%}模板标记(如果它在AppEngine上有效-在Django上有效)并查看出现了什么情况?然而,你有没有具体的理由不使用通常的dict作为上下文?