Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
django:为什么我们在modelSerializer中使用嵌套的元类?_Django_Django Models_Metaclass_Django Serializer - Fatal编程技术网

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

django:为什么我们在modelSerializer中使用嵌套的元类?,django,django-models,metaclass,django-serializer,Django,Django Models,Metaclass,Django Serializer,我对python和django都是新手,还学习了序列化程序。我注意到,在定义序列化程序类时,它需要在其中嵌套一个元类。我对这个元类概念不太熟悉,所以我在谷歌上搜索了一下,发现元类是一个实例为类的类。即使读了这本书,我也感到困惑。外部序列化程序类是内部元类的实例吗?在这里使用这个元类需要什么?Python的元类和Django的元类是不同的概念 你在google上看到的是Python的元类,Django框架经常使用这种结构,但在面向用户的代码中却没有。解释Django如何在框架代码中使用元类 Dja

我对python和django都是新手,还学习了序列化程序。我注意到,在定义序列化程序类时,它需要在其中嵌套一个元类。我对这个元类概念不太熟悉,所以我在谷歌上搜索了一下,发现元类是一个实例为类的类。即使读了这本书,我也感到困惑。外部序列化程序类是内部元类的实例吗?在这里使用这个元类需要什么?

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

你在google上看到的是Python的元类,Django框架经常使用这种结构,但在面向用户的代码中却没有。解释Django如何在框架代码中使用元类


Django的Meta类另一方面,它是一种内部类结构,用于一些框架最前端的元素:模型、表单、序列化器、模型管理员等。这些类描述了在运行时或迁移时读取的特定元素的配置,但并不严格保存在数据库中,因为它们与数据库无关。例如,如果没有指定顺序,框架需要知道模型查询集的首选顺序,那么它就会读取模型的元配置。表单将读取在调用
是否有效时必须验证的字段。等等。

不,这是一个完全不同的概念。这里它只是一个有一些定义的内部类。但整个Django都使用相同的概念;实际上,在学习django rest框架之前,您应该先学习django。如果你有,这种模式不会让你感到惊讶。