django

django介绍与安装

认识Django 官网(https://docs.djangoproject.com/en/2.2/intro/tutorial01/)
Django是一个高级Python Web框架,鼓励快速开发和干净,实用的设计。由经验丰富的开发人员构建,它可以解决Web开发的大部分麻烦,因此您可以专注于编写应用程序而无需重新发明轮子。它是免费和开源的。
目前django最新版本是2.2.3

安装向导

在终端输入pip install django下载
如果不放心是否为最新版本可在终端输入pip install django==2.2.3; (当前最新版本)
*注:安装时单独放在一个pycharm里的project里面会更方便哦!
django安装

创建项目

安装django后一并安装django-admin.exe命令行工具。
1.cd到放项目的目录下
2.django-admin startproject 文件名完成创建
在这里插入图片描述
建好之后效果

djaogo_test目录

1.app/migrations:数据库迁移桥本
2.admin.py 自带的后台配置文件,快捷实现表CRUD
3.models.py 定义数据库表结构
4.tests.py 单元测试
5.views.py 功能逻辑,渲染页面
*修改文件自动重启,django debug开发模式会自动重启服务。
python manage.py migrate
在数据库中创建表命令

django自带基本项目结构介绍

manage.py 命令行工具,负责运行、创建子模块等功能,更django-admin.
mysite 跟项目同名的子包
mysite/settings.py 工程项目设置文件。数据库、时区、语言等,方便其他地方调用
mysite/urls.py url 路由。指向 不同的视图函数。
mysite/wsgi 通用网关接口。部署时用到。

运行测试服务器

测试服务器性能低,不负责高并发,仅供担任开发访问
运行命令:python manage.py runserver
在这里插入图片描述

与平时 Python.xx.py 不同,manage.py被第三方工具封装成了CLI命令行工具,后面runserver是一个参数
python manage.py runsever 0.0.0.0:8000自定义

创建APP(民意调查应用)

1.运行命令 python manage.py startapp polls

project VS apps,django项目里的app并不是我们平时所说的应用。一个项目、一个应用在project,django框架中的app是一个更小级别的划分,代表一个大模块。
比如大型项目教育网站,权限、学生、教室、后台。每个大模块下有几十个页面和功能。都写在一起脚本太大不好维护,所以以django小项目可以一个模块,大项目可以按逻辑分为多个app(子应用)。
建好之后效果
在民调app中包含以下代码:
rom django.urls import path

from . import views

urlpatterns = [
path(’’, views.index, name=‘index’),
]
效果图
2.下一步是将根URLconf指向polls.urls模块。在 mysite/urls.py,添加导入django.urls.include并include()在urlpatterns列表中插入一个 ,所以你有:
浏览图片
启动服务器连接index视图
python manage.py runserver
运行之后检测是否连接成功’127.0.0.1:8000/polls/index’ 如出现以下页面就是连接成功
在这里插入图片描述

整体流程

1.客户端发起请求
2.全局urls(项目同名包下的)查询指视图或子app下url
app下子url继续匹配,成功匹配指向视图函数
3.视图函数进行业务处理,返回http响应信息(http源代码)
4.浏览器加载响应html代码,看到结果流程过程

迁移

1.model.py 用类的方式定义表结构
在这里插入图片描述
2.想要使用和生成表结构的app需要先加入到settings中的installed_apps
在这里插入图片描述
3.生成python manage.py makemigrations [app_name],生成的迁移脚本在migrations文件夹下
在这里插入图片描述
3.执行sql python manage.py migrate
在这里插入图片描述
4.成功后会在数据库中看到生成的表。django_migratuibs表记录迁移过程
在这里插入图片描述
迁移整体流程
在这里插入图片描述

各种配置

1.settings.py配置
mysql连用户名 密码。项目大型后会有很多配置,如果写在每一个py脚本中将会产生重复代码,解决方案是在py.json配置文件声明键值对变量,其他各个py脚本配置。变量习惯上全大写字母命名。
alt
Alt

2.数据库配置
默认sqlite,其他mysql.postgresql
在这里插入图片描述
在这里插入图片描述

ORM

文件位置 模型层-supported database, http://d.u753.com/ref/databases.html
mysql:
1.官方推荐驱动mysqlclient
pip install mysqlclient
2.确认字符集为utf-8
登录mysql客户端 show variables like 'character%' 文档位置 模型层-supported database ,http://d.u753.com/ref/databases.html 配置settings-database http://d.u753.com/ref/settings.html#std:setting-NAME

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值