将Django App与django-cms集成

Pau*_*ulo 3 python django django-cms

大家好.我有一个自定义的联系表单应用程序,我想将它与django-cms集成.根据我的理解,我必须使用django-cms注册应用程序,然后在我的视图中我必须返回一个RequestContext实例而不是常规上下文实例,所以在我的views.py中我有

return render_to_response('my_template.html',
                          {'form': form},
                          context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

我不知道我在这里遗漏了什么,但我的问题是我不想硬编码模板名称

my_template.html
Run Code Online (Sandbox Code Playgroud)

相反,我希望模板与我添加新页面时的模板相同,所以我的问题是,有没有办法从主持应用程序的django-cms页面获取模板,或者我必须对模板进行硬编码要使用的?

oji*_*jii 5

如果您的apphook是单个视图/,您可以使用{% extends request.current_page.get_template %},但这不适用于您应用中的子页面.

对于您需要扭转你的应用程序的根视图,使用cms.utils.page_resolver.get_page_from_request与use_path参数,以获得页面,然后调用get_template页面上和扩展.