简介
Django 是一个用于构建 Web 应用程序的高级 Python Web 框架。
版本对应
-
不同版本的django框架是基于特定的不同的python版本开发的,所以不同版本的django框架要正常执行功能只能安装特定的python版本
-
Django安装
安装 Django
# 全局安装
pip install django
# 如果你用的是 Python 3.7,请安装 Django 2.2:
# pip install django==2.2
Django 自带的脚手架工具 django-admin 创建项目
django-admin startproject django_news
cd django_news
IDEA启动Django项目
-
IDEA需要安装Python插件
-
项目骨架
-
IDEA导入项目会识别成JAVA,需要在项目.iml文件中修改成 PYTHON_MODULE
-
项目配置SDK
-
添加Django
-
配置Django
-
添加Django运行
-
添加Django运行,这里需要把manage.py中DJANGO_SETTINGS_MODULE=django_news.settings加到启动参数中
创建自定义 Django App
命令生成自定义APP
python manage.py startapp daihao
生成的 daihao 应用文件夹结构:
daihao // daihao 应用目录
├── __init__.py // 初始化模块
├── admin.py // 后台管理配置
├── apps.py // 应用配置
├── migrations // 数据库迁移文件目录
│ └── __init__.py // 数据库迁移初始化模块
├── models.py // 数据模型
├── tests.py // 单元测试
└── views.py // 视图
自定义 App 添加到全局配置,settings.py 中将 daihao 应用加入 INSTALLED_APPS 中
视图访问
- 视图访问流程:Django 的路由系统是由全局路由和子应用路由组成。简单来说,根据用户输入的 URL,全局路由表进行匹配并选择正确的子应用路由,再由所选择的子应用路由匹配并选择正确的视图(View)
- daihao/views.py,添加视图
from django.http import HttpResponsedef index(request):return HttpResponse('Hello World!')
- 访问index视图函数,先实现子应用的路由表,创建 daihao/urls.py
from django.urls import pathfrom . import viewsurlpatterns = [path('', views.index, name='index'),
]
每一个 Django 路由表模块(urls.py)中都约定必须包含一个 urlpatterns 列表用来存放路由映射表。列表中每个元素是一个用 django.urls.path 函数封装好的路由映射,通常接收以下三个参数:
- route:必须,即实际的访问路由,空字符串等于 /,即空路由
- view:必须,该路由将要访问的视图
- name:可选,该路由的名称,方便后续在模板中使用
- 子应用路由接入全局路由,django_news/urls.py 中修改
from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),# '' 即通过 / 就能访问path('', include('daihao.urls')),
]
- 启动运行