一 .Django的流程和命令行工具
创建命令 安装 pip3 install django (最新版本) pip3 install django==版本号 (指定版本) 创建项目 django-admin startproject 项目名 创建app 进入项目目录 python manage.py startapp app
seettings配置 1, INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app01.apps.App01Config', # 加上app名 ] 2,TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')] # 加入模板路径 , 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] 数据库配置 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': "db7", #create DATABASE Dear1; 'USER': "root", 'PASSWORD':'root', 'HOST':'localhost', 'PORT':'3306', } } 3,LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' 4,STATIC_URL = '/static/' # 静态文件目录的别名 STATICFILES_DIRS = { os.path.join(BASE_DIR, 'statics'), # 设置静态文件的实际目录 } # 当项目较大需要在不同的app中放置静态文件,可以使用如下写法 STATICFILES_DIRS = { os.path.join(BASE_DIR, 'app01', 'statics'), os.path.join(BASE_DIR, 'app02', 'statics'), ... } 设置静态文件目录后有两种方式引入到模板文件中 1:直接使用 <img src='static/1.jpg'> 2:在页面上方加入 {% load staticfiles %} 使用<img src="{% static '1.jpg' %}">引入 推荐使用该方式 启动项目 python manage.py runserver 127.0.0.1:8090
django项目目录 manage.py ----- Django项目里面的工具,通过它可以调用django shell和数据库等。 settings.py ---- 包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。 urls.py ----- 负责把URL模式映射到应用程序。 views.py----- 定义视图,对应urls.py中的路由 models.py ---- 定义数据库中的表 templates目录 ---- 放置模板文件 statics目录 ---- 放置静态文件
models数据表生成命令
生成同步数据库的脚本:python manage.py makemigrations
同步数据库: python manage.py migrate
admin管理员命令使用
设置admin模块的超级管理员 python manage.py createsuperuser
例如用户名: loverto (lovertao)
http://127.0.0.1:8000/admin/
其他命令操作 清空数据库 python manage.py flush 查询某个命令的详细信息 django-admin.py help startapp 启动交互界面 python manage.py shell 这个命令和直接运行python进入shell的区别是:你可以在这个shell里面调用当前项目的models.py中的API,对于操作数据,还有一些小测试非常方便。 终端上输入python manage.py 可以看到详细的列表,在忘记子名称的时候特别有用。