1. Django项目与Django应用
Django项目通常是使用django-admin工具创建的项目结构,执行如下命令创建Django项目myproject:
django-admin startproject myproject
python manage.py startapp myApp
2. myproject/myproject/settings.py中的变量INSTALLED_APPS
该变量的值是一个list,给出在Django项目中包含的Django应用。
Django框架默认情况下,Django项目中包含如下Django应用:
INSTALLED_APPS = [
'django.contrib.admin', 站点管理系统
'django.contrib.auth', 认证系统
'django.contrib.contenttypes', content types框架
'django.contrib.sessions', session框架
'django.contrib.messages', message框架
'django.contrib.staticfiles', 静态文件管理框架
]
在Python代码中,可以使用django.apps.apps引用上述settings.py中的INSTALLED_APPS变量。django.apps.apps也被称为应用注册器,提供如下public的方法:
from django.apps import apps
apps.get_app_config('admin').verbos_name
上述Python脚本执行,输出'Admin'。
事实上,一个Django应用就是一个django.apps.AppConfig类的扩展子类。
4. 在myproject项目中创建一个Django应用myapp
我们都熟悉了使用manage.py在Django项目中创建Django应用的方式,下面以Python代码的方式直接创建Django应用。
1) 编辑myproject/myapp/apps.py
from django.apps import AppConfig
class MylistsConfig(AppConfig):
name = 'mylists'
label = 'mylists'
INSTALLED_APPS = [
'myproject.myapp.MylistsConfig',
# ...
]
3) python3 manage.py makemigrations myapp
4) python3 manage.py migrate
参考链接:
https://docs.djangoproject.com/en/1.11/ref/applications/