【发布时间】:2015-06-20 21:33:53
【问题描述】:
作为 Django 序列化的一部分,我正在尝试从输出 json 对象中删除 pk 和 model。我在views.py中尝试了下面的代码,但是它抛出了下面的错误
TypeError: serialize() takes 2 positional arguments but 3 were given.
为了解决这个问题,我也使用了@staticmethod,但没有多大用处。
这里是 views.py
def get_stats(request):
if request.method == "POST":
srch_dropV = request.POST['srch_dropAJ']
else:
srch_dropV = ''
if(srch_dropV == 'Lock'):
stud = LockBased.objects.all()
response_data = {}
response_data['result'] = 'Success'
serializer = NewSerializer()
response_data['message'] = serializer.serialize('json', stud)
return HttpResponse(JsonResponse(response_data), content_type="application/json")
from django.core.serializers.json import Serializer, DjangoJSONEncoder
import json
class NewSerializer(Serializer):
def end_serialization(self):
cleaned_objects = []
for obj in self.objects:
del obj['pk']
del obj['model']
cleaned_objects.append(obj)
json.dump(cleaned_objects, self.stream, cls=DjangoJSONEncoder, **self.options)
请帮我找出问题并解决它。
我正在使用 Django 1.8 和 Python 3.4。
【问题讨论】:
标签: python django python-3.x django-views