Python Django视图中的动态类mixin
我有一个基于类的视图,如果站点设置设置为true,我需要从另一个类继承该视图。我在谷歌上搜索了python动态继承,但没有找到任何我能理解或似乎合适的东西。仅供参考:我的python知识还远远不够广泛,所以就我所知,这可能是一件非常不符合python的事情 下面是一些伪代码来概括我的意思:Python Django视图中的动态类mixin,python,django,Python,Django,我有一个基于类的视图,如果站点设置设置为true,我需要从另一个类继承该视图。我在谷歌上搜索了python动态继承,但没有找到任何我能理解或似乎合适的东西。仅供参考:我的python知识还远远不够广泛,所以就我所知,这可能是一件非常不符合python的事情 下面是一些伪代码来概括我的意思: Class MyView(View): If settings.IMPLEMENTS_ACTIVITY: Set MyView implements activity 我希望
Class MyView(View):
If settings.IMPLEMENTS_ACTIVITY:
Set MyView implements activity
我希望这有助于解释我的意思。也许有人能给我指出正确的方向 我宁愿调用另一个类方法,也不愿更改继承:
class View1(View):
pass
class View2(View1):
def sepcific_view2_activity(self):
pass
if settings.IMPLEMENTS_ACTIVITY:
MyView = View1
else:
MyView = View2
Class MyView(View):
def get(request):
If settings.IMPLEMENTS_ACTIVITY:
return CoolView1().get(request)
else:
return CoolView2().get(request)
Class CoolView1(View):
def get(request):
return 1
Class CoolView2(View):
def get(request):
return 2
不确定您为什么需要那里的
类型。为什么不干脆MyView=View1
等等?你说得对,太复杂了。可能使用View1并使用MyView=View1,如果设置键为,则MyView=type('View1',(),{'specific_method':func})。