Python 如何序列化Django视图对象?
我想序列化我的上下文数据,但我得到了以下错误:TypeError:Python 如何序列化Django视图对象?,python,django,ajax,serialization,view,Python,Django,Ajax,Serialization,View,我想序列化我的上下文数据,但我得到了以下错误:TypeError:的对象不可JSON序列化 这是我的密码: from django.template.loader import render_to_string context = self.get_context_data() html = render_to_string('difficult_test.html', context) if self.request.is_ajax():
from django.template.loader import render_to_string
context = self.get_context_data()
html = render_to_string('difficult_test.html', context)
if self.request.is_ajax():
return http.JsonResponse({"html":html, 'context':context})
return response
只有基元类型被序列化您有
tests.views.ExamView
它是上下文中的类视图对象请从上下文中删除一些具有类对象的项。您可以记录它以了解上下文中有多少类对象。如果还需要类对象数据,则需要手动序列化它
delete self.context['view']
Django的通用API视图的get_serializer_context()类似
您的上下文必须是包含基元类型、int、str…或可序列化对象的dict
def get_serializer_context(self):
"""
Extra context provided to the serializer class.
"""
return {
'request': self.request,
'format': self.format_kwarg,
'view': self
}