応答を返す部分から、コードのリスト生成部分を抽象化する必要があります。
マザーからのこのコードは、完全に無効ではありませんが、機能するものでもありません。
return HttpResponse(data, mimetype='application/json', status=200)
return list
最初のreturnステートメントの後、Pythonはメソッドを実行しなくなったため、2番目のreturnは実行されません。
次のように分割してみてください。
class Mother(object):
def makeList(self)
data['list'] = [2,3,4,5]
data = json.dumps(data)
return data
def getList(self)
data = self.makeList()
return HttpResponse(data, mimetype='application/json', status=200)
class Child(Mother)
def makeList(self)
my_list = super(Child, self).makeList()
# do something to it
return my_list
これでmakeList
、Motherオブジェクトに、実際のリストを作成し、getList
それをHttpResponseオブジェクトにフォーマットするメソッドがあります。
子でmakeList
は、オーバーライドされますが、母からバージョンを呼び出すことから始まります。その後、必要な変更を加えて、それを返すことができます。を呼び出すと、その新しいリストが使用され、Motherからchild.getList()
継承されるため、HttpResponseにレンダリングされます。getList