第二篇.Django简介
一.MVC与MTV模型
mvc和mtv -django 是mtv模式: -M:model ---->模型 -T:Template --->模板 -V:view ---->视图 -mvc模式: -M:model---->模型,数据库相关 -v:view----->模板---->页面相关 -C:controller--->控制器:url+view 本质上:MTV就是MVC
二.Django的下载与基本命令
2.1下载Django
方法1:
在命令行输入:pip3 install django
pip install django==1.11.9
方法2:
方法三:
用pycharm的Terminal的命令行安装
总结:
django的安装和简单使用 -安装:1 pip3 install django==1.11.9 2 pycharm 下安装,选择版本号 -使用: 命令创建项目:django-admin startproject 项目名字 创建app:python3 manage.py startapp app01 -文件目录介绍: -manage.py---项目入口,执行一些命令 -项目名 -settings:全局配置信息 -urls:总路由,请求地址跟视图函数的映射关系 -app名字 -migrations:数据库迁移的记录 -models.py 数据库表模型 -views 视图函数 -运行项目: pytyon3 manage.py runserver 127.0.0.1:8001
三.Django的静态文件配置
setting.py文件夹
STATIC_URL = '/static/'#被login.html下的static对应 这个是静态文件的路径 STATICFILES_DIRS=[ os.path.join(BASE_DIR,'static'), ]
urls.py文件夹
from django.conf.urls import url from django.contrib import admin from app01 import views urlpatterns = [ url(r'^admin/', admin.site.urls), url('hello',views.loginhtml), ]
login.html文件夹
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="/static/css/bootstrap-3.3.7-dist"> <link rel="stylesheet" href="/static/mycss.css"> <title>登陆</title> </head> <body> <h1>你好</h1> </body> </html>
mycss.css文件夹
h1{
color: red;
}
四.三件套总结
views文件
from django.shortcuts import HttpResponse, render, redirect def action1(request): return HttpResponse("基础信息") #返回的是字符串 def action2(request): return render(request, 'template_page.html', {k:v}) #返回的是html文件 def action3(request): return redirect('/index/') #例如对home发送请求,得到的是index,状态3开头的就是重定向的状态码
六.Django的请求生命周期
页面模板的渲染和数据库的交互不进行交互,Django开发的业务逻辑与(页面模板的渲染,数据库的交互)进行交互。路径决定调用哪个接口
1.浏览器发送请求 2.wsgi服务器接收到请求,将请求解析交给Django 3.Django中间件过滤请求信息,交给路由 # 'django.middleware.csrf.CsrfViewMiddleware',#cookie是客户端,session是服务器端,注释掉中间件是因为post请求过不去 4.路由完成业务逻辑的分发,到指定app下views中指定的视图函数 5.视图函数完成具体的业务逻辑,返回响应结果 6.将处理结果通过服务器返回给浏览器
七.Django连接数据库
7.1Django连接navicate
1 先在navicate里面创建好数据库 2 如果连接mysql:在setting里配置: 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'PORT': 3306, 'USER': 'root', 'PASSWORD': 'admin', 'NAME': 'lqz', },am 在app下的__init__.py里写: import pymysql pymysql.install_as_MySQLdb() 2 django-orm: 1 不能创建数据库(需要手动创建数据库) 2 可以创建数据表 3 可以创建字段 3 数据库迁移 1 python3 manage.py makemigrations ----记录一下数据库的变化 2 python3 manage.py migrate ----将变化同步到数据库中
ps.如需要添加字段
选择1)表示添加默认值
选择2)退出手动添加,default
7.2Django连接sqlite
1.如果没驱动的话先要下载驱动
2.填写必要的内容
3.