Django:如何在views.py中调用基于类的通用视图?

时间:2013-01-27 12:37:45

标签: django-class-based-views django-generic-views django-1.4

我想在views.py

中调用基于类的通用视图

请参阅我的代码......

urls.py

from django.conf.urls import patterns, include, url
from crm.views import *

urlpatterns = patterns('',
    (r'^workDailyRecord/$', workDailyRecord),
)

和我的views.py ....请注意......

views.py

from django.views.generic import TodayArchiveView
from crm.models import *

def workDailyRecord(request):
    if request.method == 'GET':
        tView.as_view() # I want call class-based generic views at this line.
    elif:
        """
        Probably this part will be code that save the data.
        """
        pass

class tView(TodayArchiveView):
    model = WorkDailyRecord
    context_object_name = 'workDailyRecord'
    date_field = 'date'
    template_name = "workDailyRecord.html"

我该怎么办?

2 个答案:

答案 0 :(得分:9)

Try this

def workDailyRecord(request):
    if request.method === 'GET':
        return tView.as_view()(request)

答案 1 :(得分:0)

 def common_act(request, way, pk):
     types = {'grp':[10,'Group'],'std':[20,'Student']}
     events = {'crt':[1,'Create'], 'edt':[2,'Edit'], 'dlt':[3,'Delete']}
     ress = way.split('_')
     act_code = str(types[ress[1]][0] + events[ress[0]][0])

     action_way = {
            '11': CrtGroup,
           '12': EdtGroup,
           '13': DltGroup,
           '21': CrtStudent,
           '22': EdtStudent,
           '23': DltStudent
           }
return action_way[act_code].as_view()(request,pk=pk)

它的工作)))

相关问题