Django REST 框架:CreateOnlyDefault 的目的

彼得·托马森

根据 Django REST Framework docs,传递default=CreateOnlyDefault(<arg>)给序列化器字段

可用于仅在创建操作期间设置默认参数在更新期间,该字段被省略。

它接受一个参数,这是在创建操作期间应该使用的默认值或可调用的。

这与声明您将传递给的单个参数read_only=True, default=<arg>在哪里<arg>CreateOnlyDefault什么不同?

迈克尔·里戈尼

CreateOnlyDefault使用时,该值将只在创作上不更新中使用。

例如:

class MySerializer:
    created = serializers.DateTimeField(
        read_only=True,
        default=serializers.CreateOnlyDefault(timezone.now)
    )
    modified = serializers.DateTimeField(
        read_only=True,
        default=timezone.now
    )

使用该序列化程序,modified字段将在每次更新时更新,而created字段从创建时将保持不变。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章