我正在关注序列化程序的Django Rest Framework 教程,但发现了一些不寻常的行为.如果print repr(serializer_instance)显然应该打印有用的检查,我只能得到这种表示:
<snippets.serializers.SnippetSerializer object at 0x10220f110>.
Run Code Online (Sandbox Code Playgroud)
我的代码似乎与教程中的代码完全一致,我使用的是Django 1.7和Python 2.7.有谁知道为什么会发生这种情况?
片段/ 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')
Run Code Online (Sandbox Code Playgroud)
片段/ models.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]) …Run Code Online (Sandbox Code Playgroud)