我真是一筹莫及。经过十几个小时的故障排除,可能更多,我以为我终于可以做生意了,但接着我发现:
Model class django.contrib.contenttypes.models.ContentType doesn't declare an explicit app_label
网上关于这方面的信息太少了,没有解决方案可以解决我的问题。任何建议都将不胜感激。
我使用的是Python 3.4和Django 1.10。
从我的settings.py:
INSTALLED_APPS = [
'DeleteNote.apps.DeletenoteConfig',
'LibrarySync.apps.LibrarysyncConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
我的app .py文件是这样的:
from django.apps import AppConfig
class DeletenoteConfig(AppConfig):
name = 'DeleteNote'
and
from django.apps import AppConfig
class LibrarysyncConfig(AppConfig):
name = 'LibrarySync'
在我的例子中,在settings.py中的BASE_DIR有一个问题。这是包的结构:
project_root_directory
└── service_package
└── db_package
├── my_django_package
│ └── my_django_package
│ ├── settings.py
│ └── ...
└── my_django_app
├── migrations
├── models.py
└── ...
它在更新settings.py时工作:
INSTALLED_APPS = [
'some_django_stuff_here...',
'some_django_stuff_here....',
...
'service_package.db_package.my_django_app'
]
BASE_DIR指向项目根目录
BASE_DIR = Path(__file__).resolve().parent.parent.parent.parent.parent
在调试中运行django,在registry.py中使用断点-> def get_containing_app_config(self, object_name)
在不断遇到这个问题并不断回到这个问题之后,我想我应该分享我的问题是什么。
@Xeberdee的所有内容都是正确的,所以遵循它,看看是否解决了问题,如果没有,这是我的问题:
在我的app .py中是这样的:
class AlgoExplainedConfig(AppConfig):
name = 'algo_explained'
verbose_name = "Explain_Algo"
....
我所做的就是把项目名称加在我的应用名称前面,像这样:
class AlgoExplainedConfig(AppConfig):
name = '**algorithms_explained**.algo_explained'
verbose_name = "Explain_Algo"
这解决了我的问题,我能够运行makemigrations和migrate命令之后!祝你好运
在我的例子中,我在将代码从Django 1.11.11移植到Django 2.2时得到了这个错误。我正在定义一个自定义的FileSystemStorage派生类。在Django 1.11.11中,我在models.py中有如下一行:
from django.core.files.storage import Storage, DefaultStorage
然后在文件中我有类定义:
class MyFileStorage(FileSystemStorage):
然而,在Django 2.2中,我需要在导入时显式引用FileSystemStorage类:
from django.core.files.storage import Storage, DefaultStorage, FileSystemStorage
瞧!,错误消失。
注意,每个人都在报告Django服务器吐出的错误消息的最后一部分。然而,如果你向上滚动,你会在错误的中间找到原因。