【发布时间】:2021-06-07 08:29:42
【问题描述】:
嗨,我试图获取一个 json 响应以传递给模板,当我询问所有者属性时,问题就出现了,例如来自用户模型。除了message.owner,我收到了一切正常。我首先尝试使 User 可序列化对象,但它不起作用。 这是我的代码 聊天模型
'''
class ChatView(LoginRequiredMixin, View):
model = Chat
template_name = 'chats/all_chats.html'
def get(self, request):
return render(request, 'chats/all_chats.html')
def post(self, request):
chat = Chat(text=request.POST['message'], owner=request.user)
chat.save()
return redirect(reverse('all_chat'))
@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
return super().dispatch(*args, **kwargs)
class ChatMessagesView(LoginRequiredMixin, View):
def get(self, request):
User = get_user_model()
messages = Chat.objects.all().order_by('created_at')[10:]
results = []
for message in messages:
result = [message.text, message.owner, naturaltime(message.created_at)]
results.append(result)
'''
【问题讨论】:
-
message.owner 很可能是一个 UUID/ID,它不能被序列化为 json,只返回结果,请查看docs.djangoproject.com/en/3.1/topics/serialization 或 DRF 的模块序列化程序
标签: json django serialization