gpt4 book ai didi

django:为什么我们在 modelSerializer 中使用嵌套元类?

转载 作者:行者123 更新时间:2023-12-02 14:55:29 32 4
gpt4 key购买 nike

我是 python 和 django 的新手,正在学习序列化器。我观察到,在定义序列化器类时,它需要在其中嵌套一个元类。我不擅长这个元类概念,所以我用谷歌搜索它并发现元类是一个实例是类的类。即使读完后我也很困惑。外部序列化器类是这里内部元类的实例吗?这里使用这个元类有什么必要?

最佳答案

Python 的元类和 Django 的元类是不同的概念。

您在 google 上发现的内容是关于 Python 的元类,这是 Django 框架大量使用的构造,但在面向用户的代码中并未使用。 This blog post解释 Django 如何在框架代码中使用元类。

Django 的 Meta 类另一方面,它是一些框架最前面元素中使用的内部类结构:模型、表单、序列化器、ModelAdmins 等。这些类描述了某个特定的配置在运行时或迁移时读取的元素,但并不严格保存在数据库中,因为它们不涉及数据库。例如,当框架需要知道模型的 QuerySet 的首选顺序(如果未指定顺序)时,框架会读取模型的 Meta 配置。表单在调用 is_valid 时将读取必须验证的字段。等等。

关于django:为什么我们在 modelSerializer 中使用嵌套元类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44394146/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com