问题标签 [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.
django - 如何将感知日期时间字段从 UTC 转换为本地
我有一个存储感知Datetime
值的数据库。因此,例如Datetime
数据库中的字段可以具有值2015-11-06 12:22:39.160983+01
。
当发生请求包含该值的记录的 api 调用时,响应过去是这样的2015-11-06T11:22:39.160983Z
。
然后我添加了
到模型序列化器,它是类的子HyperlinkedModelSerializer
类,现在响应是这样的2015-11-06 11:22:39.160983
。
我想要的是能够将值转换回原始本地时间。这意味着我希望响应看起来像那样2015-11-06 12:22:39.160983
。我怎样才能做到这一点?
json - Django:相互嵌套序列化程序
我正在弄清楚如何将序列化程序合并或嵌套到彼此中。在这个例子中,我有一个列模型(由Column
类组成)和属于列模型的数据(由 组成Data class
)。我的问题是我不知道如何从另一个序列化程序类调用 ModelSerializer 并传递参数(结果始终为空)。
如果我的模型在这种情况下是正确的,以及如何创建所需的 JSON,以便结果重用现有的序列化程序并避免重复任何数据,你能告诉我吗?
注意:在最好的情况下,数据属性应该相互依赖,以便只有那些定义为列的数据才能被序列化。
模型.py
期望的输出:
但是使用 ModelSerializer 的结果是这样的:
python - DRF ListSerializer 错误:应为项目列表,但类型为“int”
我正在尝试通过传递many=True
给序列化程序来序列化对象列表。如果我传递一个实例而不是一个没有 的列表many=True
,则序列化程序可以工作。我仍在尝试了解序列化程序的工作原理,但在调试此问题时遇到了麻烦。我正在使用 DRF 3.3.0
查看:(下面第3行错误)
序列化器:
追溯
generics - Django从字符串中获取类
我正在寻找一种在 Python 中通过类名来实例化类的通用方法,其方式与在 Java 中的完成方式类似,而无需在 IF..ELIF 条件中显式指定类名。
这是因为我有几个不同的模型和序列化程序,并希望通过 HTTP 请求中的参数使它们可寻址。它是为了增强松散耦合和模块化。
例如https://www.domain.com/myapp/sampledata.json?model=<modelname>
应该获取类<modelname>
和<modelname>Serializer
.
https://docs.djangoproject.com/en/1.7/ref/models/queries/
自从 Django 1.7之前get_model
用于类似目的以来,对此进行了一些更改。
从 Django 1.7 开始,不推荐使用 django.db.models.loading(将在 1.9 中删除),以支持新的应用程序加载系统。
警告:
RemovedInDjango19警告:django.db.models.loading 中的实用程序已被弃用,有利于新的应用程序加载系统。
返回 f(*args, **kwds)
应该如何修改以下代码以从字符串中获取类?
视图.py
django-rest-framework - 多个序列化器
你好,我有这个模型,我想序列化这个视图集
模型.py
我尝试如下
序列化程序.py
视图集.py
python - AssertionError: `HyperlinkedIdentityField` 需要序列化程序上下文中的请求
我想建立一种many-to-many
关系,一个人可以在很多俱乐部,一个俱乐部可以有很多人。我为以下逻辑添加了models.py
andserializers.py
但是当我尝试在命令提示符中对其进行序列化时,我收到以下错误 - 我在这里做错了什么?我什至没有HyperlinkedIdentityField
models.py
serializers.py
views.py
检查创建的序列化程序给了我这个 -
但serializer.data
给了我错误
编辑
我意识到错误可能是因为url
模式,所以我添加了以下 url 模式,但我仍然得到错误 -
python - Django Rest Framework 实现多对多关系
我想建立一种many to many
关系,一个人可以加入多个社交俱乐部,一个社交俱乐部可以有多个成员。这是我已经走了多远,但这不显示电影详细信息,并且序列化给了我一个错误-
Original exception text was: 'ManyRelatedManager' object has no attribute 'club_name'.
models.py
serializers.py
views.py
urls.py
在我的本地服务器上,我获得了将我导航到俱乐部详细信息视图的俱乐部列表,但它不显示电影名称,或者,但我看不到人员列表。我该如何正确地做到这一点?
python - 尝试获取序列化程序上的字段值时出现 AttributeError
试图manytomany
在 django 中建立关系,但出现以下错误 -
尝试获取
name
序列化程序 GenreSerializer 上的字段值时出现 AttributeError。序列化器字段可能命名不正确,并且与 Movie 实例上的任何属性或键都不匹配。原始异常文本是:“电影”对象没有属性“名称”。
这里有一个类似的答案推荐设置many=True
,但它不起作用 -
尝试获取字段值时出现属性错误
模型.py
序列化程序.py
网址.py
视图.py
json - Return display_name in ChoiceField
I'm implementing some REST API in DRF with ModelViewSet
and ModelSerializer
. All my APIs use the JSON format and some of my models use ChoiceField field, like that:
My problem is that by default DRF always returns (and accept) the key of these choices for JSON messages (see here), but I would like to use the label instead, because I think it's more consistent and clear to unterstand for who will use those APIs. Any suggestion?
python - 序列化将每个字符作为对象返回
我有一个简单的视图,我需要在其中返回 JSON 数据,但是在使用时django serialize
它JsonResponse
会将每个字符作为对象返回。这是片段:
问题是如果我想打印response.content[0]
它会返回一些随机数,因为它是响应的第一个字符。
有什么方法可以让响应像简单字典(JSON)一样被访问?