gpt4 book ai didi

python - Django Rest Framework 序列化程序表示不起作用

转载 作者:太空狗 更新时间:2023-10-30 01:28:48 24 4
gpt4 key购买 nike

我正在关注 Django Rest 框架 tutorial on serializers ,但发现一些不寻常的行为。在 print repr(serializer_instance) 显然应该打印有用的检查的地方,我只能取回这个表示:

<snippets.serializers.SnippetSerializer object at 0x10220f110>. 

My code似乎与教程中的一致,我使用的是 Django 1.7 和 Python 2.7。有谁知道为什么会发生这种情况?

snippets/serializers.py:

from django.forms import widgets
from rest_framework import serializers
from snippets.models import Snippet, LANGUAGE_CHOICES, STYLE_CHOICES

class SnippetSerializer(serializers.ModelSerializer):

class Meta:
model = Snippet
fields = ('id', 'title', 'code', 'linenos', 'language', 'style')

片段/模型.py:

from django.db import models
from pygments.lexers import get_all_lexers
from pygments.styles import get_all_styles

LEXERS = [item for item in get_all_lexers() if item[1]]
LANGUAGE_CHOICES = sorted([(item[1][0], item[0]) for item in LEXERS])
STYLE_CHOICES = sorted((item, item) for item in get_all_styles())

class Snippet(models.Model):
created = models.DateTimeField(auto_now_add=True)
title = models.CharField(max_length=100, blank=True, default='')
code = models.TextField()
linenos = models.BooleanField(default=False)
language = models.CharField(choices=LANGUAGE_CHOICES, default='python', max_length=100)
style = models.CharField(choices=STYLE_CHOICES, default='friendly', max_length=100)

class Meta:
ordering = ('created',)

外壳:

$ python manage.py shell_plus
>>> from snippets.serializers import SnippetSerializer
>>> serializer = SnippetSerializer()
>>> serializer
<snippets.serializers.SnippetSerializer object at 0x10220f110>
>>> print repr(serializer)
<snippets.serializers.SnippetSerializer object at 0x10220f110>

最佳答案

我遇到了同样的问题,直到我意识到我安装了 2.4 版。

只需阅读发行说明并更新到版本 3.0

例如如果您使用 requirements.txt,请将其余框架行更改为:

djangorestframework==3.0

然后运行

pip install -r requirements.txt

关于python - Django Rest Framework 序列化程序表示不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27712667/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com