模板继承 Web开发Django模型 ORM

一.模板继承

1.创建工程(博客)

在这里插入图片描述

2.配置

	1.创建一个views文件
	2.urls.py(路由)中导入views
	3.创建templates(文件夹 存)和static (文件夹 存样式css  事件js 图片img)

3.使用静态模板

	1.导入html 和 css  js   images
	2.写入路由视图

在这里插入图片描述
3.调用第一个页面在这里插入图片描述
只有html标签内容,但是没有css,images,js这些静态文件
4.修改静态文件的路径
ctrl+r
ctrl+f
在这里插入图片描述
5.修改a标签地址
在这里插入图片描述

二.继承

在实际开发过程中,使用前端开发好的静态页面,页面当中有着很多重复的代码,为了能够简单操作,复用代码,可以使用模板继承解决

1.创建一个base.html

base.html作为父类模板
调用base页面
在这里插入图片描述
提供公共的部分
方法 : 浏览器 检查 寻找公共的部分
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

2.修改子类模板

在这里插入图片描述

3.修改base页面的a标签

在这里插入图片描述

base.html 父类模板
	{% block 标识名字%}
	{%endblock%}
	
子类模板
    {% extends “base.html”%}
    {% block 标识名字%}
    {% endblock %}

模板不存在在这里插入图片描述
解决思路:
1.检查tenolates目录的位置
2.检查配置文件中templates是否正确
3.检查视图调用模板文件是否正确

三.Web开发Django模型

在Django开发中,要求我们使用app进行数据库的开发

在一个web项目中,比如电商项目,电商项目中有用户管理模块,订单管理快,商品管理模块,日志管理等模块放在同一个urls,views中不方便管理,Django 给我们提供了子应用,将独立的功能进行独立管理,将独立的模块放在同一个app当中,包括该模块的路由,视图,html,静态资源。

1.创建app子应用

在这里插入图片描述

python manage.py startapp app01     创建子应用
app01 是子应用的名字

子应用目录说明
在这里插入图片描述

migrations  数据迁移文件,数据库表结构的同步的
admin.py  站点管理
apps.py 配置当前子应用的相关信息
model.py 模型
tests.py 用于开发测试应用
views.py  视图文件

2.配置子应用 安装子应用

在这里插入图片描述

3.使用

在这里插入图片描述

4.配置子应用管理自己的路由

在这里插入图片描述

步骤:

1. 子应用中创建urls.py
2. 主目录中导入include
	path('app01/', include('app01.urls'))

访问:
在这里插入图片描述

四.Django数据库开发思维与ORM

Django鼓励开发人员进行相对独立的模块开发,这种开发模式在工作中被称为:解耦合,就是指在开发中将项目看成几个独立的模块进行开发,降低模块之间的耦合性。在这种思路下,django数据开发采用了mvc和mvt设计模式,和ORM机制

ORM 对象关系映射
在这里插入图片描述

作用:

  1. 将数据库中的表名映射为类名,将字段映射为属性,可以操作类方法,类属性快速操作数据库
  2. 可以使用我们创建好的模型,帮我们创建表
  3. 无需关心具体使用的是那种数据库

1.配置数据库

更改数据库为mysql

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'stu',    ## 库名
        'USER': 'root',   ## 用户名
        'PASSWORD': '123123',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

2.安装pymysql

pip install pymysql

3.创建库

create database stu charset=utf8;

4.编写第一个模型

在这里插入图片描述

数据类型
    
    CharField 字符串类型
    IntegerField 整形
    DecimalField  浮点型
    DateField 日期
    EmailField 邮箱
    TextField  文本类型
    BooleanField 布尔类型

5.数据迁移 数据表结构同步

1.在数据库迁移之前,确定配置是否完成

python manage.py check

2.排错
第一个错误:
在这里插入图片描述
原因:django 模式使用python2 版本的mysql数据库模块,python3 使用的是pymsql模块

解决方法:
在这里插入图片描述
第二个错误
在这里插入图片描述
原因:django默认检测pymysql的版本,修改源码,去掉检测

解决办法:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值