问题标签 [django-serializer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Django Rest Framework 自定义字段只有一对值(没有字段名作为 dict 键)
嗨,我想在 REST 服务上只提供一对没有键的值:
看看我的serializers.py:
结果如下:
如您所见,此结果将字段名称显示为该字段值旁边的 dict 键。但我想有一个不同的结构。如下所示:
此示例显示了一对键/值,其中键是语言字段值,字典的值是翻译字段的值。
如何仅显示带有“已翻译”字段的“语言”字段的值对而没有字段名称?
python - 对象没有属性'build_absolute_uri' - Django Rest Framework
我正在尝试在我的 api 中查看一个 url(使用 Django Rest Framework),但我收到以下错误:
我不确定这意味着什么,所以任何帮助将不胜感激。
这是回溯:
我假设它指的是我的模型,所以这也是:
预先感谢您的帮助!
- - 编辑:
序列化程序.py:
列表API视图:
python - 在 DRF ModelSerializer 中生成自定义响应
我需要一些帮助,我用过ModelSerializer
,DRF
这里是问题:
我想动态生成响应,我的意思是我决定用户的输入,所以我需要将请求参数传递给ModelSerializer
,然后决定我的条件是否成立,生成字段,否则生成一些其他字段。
像这样的东西:
我已经用谷歌搜索并知道我可以将参数传递context
给序列化程序,但在序列化程序中我需要通过self
对象获取参数。
我怎样才能做到这一点?
django - 外键上的Django rest框架序列化
我有一个 django 模型如下:
我有如下序列化程序:
B 序列化器的工作原理如下:
我必须进行什么调整才能使其结果如下:
django-rest-framework - 如何在 django 中将用户配置文件添加到 UserDetailsSerializer
尝试添加userprofile
到user
模型
使用:
django rest 框架。
rest-auth 模块
但行profile = instance.userprofile
给出错误:*** django.db.models.fields.related.RelatedObjectDoesNotExist: User has no userprofile.
遵循此处的说明
另外,不确定super
声明中发生了什么
可能的错误:
1.在语句之后instance
没有,因此语句给出错误2.需要添加到userprofile
super
profile = instance.userprofile
userprofile
UserDetailsSerializer
UserDetailsSerializer
用户序列化器
如果需要,请要求更清楚。
提前致谢。
django - 如何将用户配置文件定义为 UserDetialsSerializer?
我希望能够通过 :语句访问userprofile
实例
profile = instance.userprofile
UserSerializer
instance
通过以下方式创建:
instance = super(UserSerializer, self).update(instance, validated_data)
语句
UserSerializer
既然UserSerializer
是继承UserDetailsSerializer
,我想我应该定义一个userprofile
in UserDetailsSerializer
。
但我不知道该怎么做?
问题:如何定义userprofile
以UserDetailsSerializer
实现上述?
用户序列化器:
UserDetailsSerializer:
用户档案模型:
请问是否需要更清楚?
python - 如何在 DRF 中序列化自定义用户模型
我通过参考教程制作了一个自定义用户模型,这就是我序列化新用户模型的方式:
序列化程序.py
视图.py
但是当我尝试使用这个序列化程序时,我得到了
“str”对象没有属性“_meta”
我做错了什么?
python - Django Rest Framework 嵌套对象序列化,深度 >= 2
我正在使用 Django Rest Framework 构建 API。我想发布一个像这样的takeoutOrder JSON 对象:
我的模型如下所示:
我的序列化器看起来像这样:
当我尝试使用此设置发布到/takeoutOrder端点时,我成功创建了一个对象,但是餐点的组件数组为空(我相信这是因为在创建餐点时尚未创建组件)。关于如何更好地编写我的序列化 create() 方法的任何想法或任何其他建议?我有点卡住了。
如果有另一篇回答这个问题的帖子提前道歉,我找了一会儿但找不到。
谢谢!!
django - Django 到 DjangoRestFramework - 我在哪里进行表单验证(我不再使用 forms.py - 我正在使用 serializers.py)
我以前只使用 Django,但最近开始使用 DjangoRestFramework。没有 DjangoRestFramework,这是我的 forms.py:
我曾经将此表单传递到前端,然后当用户填写并点击提交时,在后端我会这样做:
验证表单是否有效。但是,现在我正在使用 DRF 和序列化程序,forms.py 中没有任何内容。我只是像这样在前端创建表单:
当用户单击提交时,AngularJS 将其发送到后端,如下所示:
数据发布到的 URL 是“/users”,处理它的视图是:
所以当我这样做时会发生验证:
话虽如此,由于我不再使用 RegistrationForm,因此不会执行额外的 clean_username() 和 clean_password2() 函数。我以前不使用 DRF 时进行表单验证的正确位置在哪里?