2015-04-15 52 views
1

我在一個項目中實現了django-bootstrap-crud-templates(BSCT https://github.com/Alem/django-bootstrap-crud-templates)應用程序。 在同一個項目中還有另一個名爲「demoapp」的應用程序。 Demoapp使用mako模板庫。如何在通用視圖中使用mako模板django

BSCT應用程序的模板使用django模板。現在,我想在此bsct應用程序中使用我的demoapp應用程序的base.html,或者我可以使用另一個應用程序中的模板。

但問題是,如果我想從另一個應用程序使用模板,那麼我必須在通用視圖(views.py)中調用它們,如下所示,但是當我這樣做時,它會給我錯誤。

從django.views匯入edxmako.shortcuts通用 選擇render_to_response導入

class CreateView(generic.CreateView): 
    # template_name = 'bsct/plain/form.html' 
    template_name = 'demoapp/templates/somepage.html' 

    def get_context_data(self): 
     context ={'name':"jay"} 
     return render_to_response(context) 

如果這是錯誤的,那麼請幫助我..! 錯誤:

get_context_data() got an unexpected keyword argument 'form' 

那麼,如何使用灰鯖模板BSCT應用,在那裏它使用Django模板。我是新手進入mako模板和django通用視圖。

回答

0

當使用Django的通用視圖時,get_context_data()方法接受關鍵字參數。

你的方法應該是這樣的,它使用Mako的模板庫

def get_context_data(self, **kwargs): 
    context = super(CreateView, self).get_context_data(**kwargs) 
    context.update({'name':'jay'}) 
    return context 
+0

如何渲染到自定義HTML? – Jay

+0

我發現在模板的開頭使用'## mako'可以做到這一點。 –