在使用django框架开发web的时候,一般会有不少URL对应不少方法,通常状况下须要在urls.py中建立URL和方法的对应关系,若是方法数量不少的话,须要写很长的urlpatterns,不只费力并且在添加或者修改方法时须要一同进行修改,费力费事,因此经过一个通用的warpper进行包装,省时省力,实现方法以下:web
一、先在views中建立通配方法django
def mapping(request,method): try: #定义一个默认首页 if method == "": method = "index" return eval(method)(request) except NameError,e: msg = u"未知的请求" logger.info(msg) logger.info(str(e)) return HttpResponse(msg) except Exception,e: msg = u"请求遇到未知错误" logger.info(msg) logger.info(str(e)) return HttpResponse(msg)
二、在urls.py里添加urlpatterns,须要在上面import下mappingapp
url(r'(.*)', mapping ,name='method')