擅长:python、mysql、java
<p>我在尝试将嵌套的JSON对象发布到DRF(Django Rest Framework)时遇到了同样的问题。</p>
<p>一旦您正确设置了编写嵌套序列化程序(请参阅<a href="http://www.django-rest-framework.org/api-guide/relations/#writable-nested-serializers" rel="nofollow noreferrer">writable nested serializers</a>上的文档),就可以使用<a href="http://www.django-rest-framework.org/topics/browsable-api/#the-browsable-api" rel="nofollow noreferrer">browsable API</a>并在其中发布/放置数据来测试它是否工作。如果这样做有效,并且您在发布/放置JSON对象时仍然在嵌套模型上得到“<em>此字段是必需的</em>”错误,那么您可能必须设置请求的内容类型。</p>
<p><a href="https://stackoverflow.com/questions/2845459/jquery-how-to-make-post-use-contenttype-application-json/2845487#2845487">This answer</a>提供了我需要的解决方案,总结如下。</p>
<pre><code>$.ajax ({
// Other parameters e.g. url, type
data: JSON.stringify(data),
dataType: "json",
contentType: "application/json; charset=utf-8",
});
</code></pre>
<p>我需要设置“contentType”和“stringify”我的js对象。</p>