python - 无法在 djongo 中创建 EmbeddedField,出现此错误 django.core.exceptions.AppRegistryNotReady: Models are not loaded yet
问题描述
嘿,我是 djongo 的新手,当我不断收到此错误时,我正在练习它的用法
文件“D:\python\django Rest webs\tms-REST API\BACKEND\bckend\students\models.py”,第 6 行,课堂上的学生(models.Model):文件“D:\python\django Rest webs\ tms-REST API\BACKEND\bckend\students\models.py”,第 7 行,学生 pass_details=models.EmbeddedField(model_container=pass_details, null=True) 文件“C:\Users\Asus\AppData\Local\Programs\ Python\Python38-32\lib\site-packages\djongo\models\fields.py”,第 225 行,在init
super() 中。init (model_container, *args, **kwargs) 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\djongo\models\fields.py”,第 87 行,在初始化
self._validate_container() 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\djongo\models\fields.py”,第 91 行,_validate_container 中的字段.model_container._meta.get_fields():文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\db\models\options.py”,第 734 行,在 get_fields 返回 self._get_fields(include_parents=include_parents, include_hidden=include_hidden) 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\db\models\options. py”,第 794 行,在 _get_fields all_fields = self._relation_tree 文件中“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\utils\functional.py”,行80、在get
res=instance。听写[self.name] = self.func(instance) 文件 "C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\db\models\options.py",第 707 行,在 _relation_tree 返回 self._populate_directed_relation_graph() 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\db\models\options.py”,行678,在_populate_directed_relation_graph
all_models = self.apps.get_models(include_auto_created=True) 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\registry.py”,第 178 行,在 get_models self.check_models_ready() 文件“C:\Users\Asus\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\registry.py”中,第 140 行,在 check_models_ready 中AppRegistryNotReady("模型尚未加载。") django.core.exceptions.AppRegistryNotReady:模型尚未加载。
我的代码看起来像这样
from djongo import models
class pass_details(models.Model):
pass_no=models.CharField( max_length=20)
class Meta:
abstract = True
class student(models.Model):
pass_details=models.EmbeddedField(model_container=pass_details, null=True)
usn=models.CharField(max_length=10)
name=models.CharField(max_length=20)
objects = models.DjongoManager()
解决方案
您确定要加载模型吗:pass_details=models.EmbeddedField(model_container=pass_details, null=True)
在我看来, null = True 正在阻止您加载模型。您可以在此处再次查看有关如何指定参数的文档:https ://djongo.readthedocs.io/docs/embedded-model-field/
推荐阅读
- vue.js - 有没有办法在组件外部但在安装的 div #app 内部输出组件数据?
- c# - 注销社交媒体身份验证 - WebAuthenticator Xamarin Essentials
- amazon-web-services - 我从不同的客户端 reuqest、nuxt/nodejs/vuex/aws 获得了相同的商店数据
- python - 出现错误:“chromedriver.exe”可执行文件需要在 Jupyter NoteBook 的 Mac 上的 PATH 中
- java - 将不带引号的字符串转换为 JsonNode
- html - 为什么我在使用 jinja2 和 html 时出现显示问题?
- java - HTTP 错误:503 服务不可用 IntelliJ IDEA GWT
- javascript - 如何将控件保持在同一页面上,直到文本框正确为止。字符?
- mysql - MySQL Query - 如何根据多列内连接的一列获取唯一行
- list - 基于条件的 Ansible 合并列表