我对Django非常陌生,我正在try 建立一个新项目,使用Django-Configurations来管理开发、试运行和生产环境的配置. https://pypi.org/project/django-configurations/个
我遵循了快速入门指南,但在设置之后,我在运行manage.py runserver
:
File "[path_redacted]/django_test/.venv/lib/python3.11/site-packages/django/apps/registry.py", line 165, in get_app_config
raise LookupError(message)
LookupError: No installed app with label 'admin'.
这是一个全新的空白项目,没有任何应用程序,也没有对默认项目设置进行任何更改.我只按照快速入门指南设置了Django配置.
我已经按照指南设置了manage.py
个:
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys
def main():
"""Run administrative tasks."""
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'django_test.settings')
os.environ.setdefault('DJANGO_CONFIGURATION', 'Development')
try:
from configurations.management import execute_from_command_line
except ImportError as exc:
raise ImportError(
"Couldn't import Django. Are you sure it's installed and "
"available on your PYTHONPATH environment variable? Did you "
"forget to activate a virtual environment?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
然后对settings.py
执行相同的操作,在默认定义BASE_DIR
之后添加以下类:
class Development(Configuration):
DEBUG = True
默认安装的应用程序在那里且未被触及,包括管理应用程序:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
如果我注释掉urls.py
中的默认管理路径,则manage.py runserver
可以很好地工作,但当然,我无法访问管理页面.
urlpatterns = [
# path('admin/', admin.site.urls),
]
我觉得我遗漏了一些非常明显的东西,但我就是想不出是什么.