0
我正在通過full tutorial在Django REST Framework website工作,並得到一個對我來說沒有意義的錯誤。Django REST框架教程給出了錯誤,不明白爲什麼
這裏的蟒蛇會議:
>>> from snippets.models import Snippet
>>> from snippets.serializers import SnippetSerializer
>>> from rest_framework.renderers import JSONRenderer
>>> from rest_framework.parsers import JSONParser
>>> snippet = Snippet(code='foo = "bar"\n')
>>> snippet.save()
>>> snippet = Snippet(code='print "hello, world"\n')
>>> snippet.save()
>>> serializer = SnippetSerializer(snippet)
>>> serializer.data
ReturnDict([('pk', 3), ('title', u''), ('code', u'print "hello, world"\n'), ('linenos', False), ('language', 'python'), ('style', 'friendly')])
>>> content = JSONRenderer().render(serializer.data)
>>> content
'{"pk":3,"title":"","code":"print \\"hello, world\\"\\n","linenos":false,"language":"python","style":"friendly"}'
>>> from rest_framework.compat import BytesIO
>>> stream = BytesIO(content)
>>> data = JSONParser().parse(stream)
>>> serializer = SnippetSerializer(data=data)
>>> serializer.is_valid()
False
>>> serializer.errors
ReturnDict([('title', [u'This field may not be blank.'])])
>>>
下面是串行的相關行:
title = serializers.CharField(
required=False,
max_length=100,
)
...並從模型中的相關行:
title = models.CharField(max_length=100, blank=True, default='')
的模型和序列化器都允許爲'標題'的空值,但錯誤表明一個空值i這是無效的。有人可以解釋爲什麼我可能會看到這個?
謝謝!我看到教程已經從昨天開始更新,顯然是爲了解決這個問題(以及其他一些問題)。在我開始編寫這個問題之前,它已經改變了,但是我仍然在查看不包含allow_blank參數的(稍微老)版本。 – seawolf 2014-12-05 18:20:33