Django
2022-07-16 21:03:13 1 举报
AI智能生成
pyhton框架Django
作者其他创作
大纲/内容
在项目中建立app
一个django项目中可以包含多个应用,每个应用可以完成不同的项目功能
a. 建立应用的指令: python manage.py startapp 应用的名称
b. 在views.py中建立视图,建立一个函数,参数是request,带有返回值,
视图在没有分配url地址前,是无法被浏览器访问的
视图在没有分配url地址前,是无法被浏览器访问的
c. 在urls.py文件中给视图分配地址映射(urls.py是属于应用,子映射文件)
i. 应用在建立的时候,是没有urls.py文件,需要新建一个urls.py文件
ii. 在urls文件中入django.urls.path函数, from django.urls import path
iii. 添加映射的参数 urlpatterns=[]
iv. 在urlpatterns中添加 path函数 用法: path(路由,视图,[关键字],[name])
1) 路由route: 要进行映射url地址
2) 视图:views.函数
3) 关键字kwargs:可以作为一个字典传递给目标视图函数
4) name:为url地址取的名,可以在Django的任意地方通过名字进行引用。
子主题
d. 将子urls.py文件,在主的urls.py中包含。
使用 django.urls.include来进行包含。
使用 django.urls.include来进行包含。
子主题
创建表
建立表的指令:(创建迁移文件)
python manage.py makemigrations goodsmanager
数据库关联
python manage.py migrate
关联数据库
a. 关联mysql
Django默认操作的是sqlite3数据库
Django默认操作的是sqlite3数据库
在settings.py文件中,配置数据库的参数 (首先需在数据库中建立一个库)
子主题
在主的_init_.py文件中进行pymysql模块的设置
子主题
b. 对数据库进行操作
建立数据库表的模型
□ 在models.py文件中,建立表结构的class
□ 在models.py文件中,建立表结构的class
在settings中对子应用模型进行注册
自带应用的说明
注册自己的应用
将模型与数据库进行关联
执行 python manage.py makemigrations app名字
如: python manage.py makemigrations goodsmanager
makemigrations : 会检测对模型文件的修改,并且把修改的部分储存为一次迁移
如: python manage.py makemigrations goodsmanager
makemigrations : 会检测对模型文件的修改,并且把修改的部分储存为一次迁移
子主题
执行 python manage.py migrate ,会在数据库中创建数据库表
Django建立的数据库表名的命名规范是:应用名_模型名
c. 利用模型中提供的方法,来对
数据库进行增删改查的操作。
数据库进行增删改查的操作。
查询全部信息 ,在views.py进行函数的建立
在views中建立函数
子主题
在urls文件中建立映射
子主题
进行条件查询
filter() ,get(), order_by()
子主题
添加或修改
建立一个模型的对象,然后给对象的相关属性赋值,
调用对象的save()就能将数据写入数据库
调用对象的save()就能将数据写入数据库
子主题
删除
子主题
d. 补充内容
models中对应着mysql数据库的自动增长类型应使用 AutoField
views中的函数时可以带参数的,这个参数是可以通过url地址进行赋值
条件查询
.filter(参数) 查询的是符合条件的数据
精确查询 列名='值' 如果是多列筛选,用逗号间隔,而sql语句用and链接多个条件
模糊查询 列名__contains
子主题
包含(符合其中之一) 列名_ _in
子主题
在一个范围内: 列名_ _range
大于: 列名_ _gt
大于等于: 列名_ _gte
小于: 列名_ _lt
小于等于: 列名_ _lte
大于: 列名_ _gt
大于等于: 列名_ _gte
小于: 列名_ _lt
小于等于: 列名_ _lte
开头是: 列名_ _startwith
结尾是: 列名_ _endwith
.exclude(参数) 查找不符合参数的数据
.get() 可以根据给定列定位返回数据 例如 Googs.objects.get(gid=1)
更多的查询方式可以查看官网文档
https://docs.djangoproject.com/zh-hans/4.0/ref/models/querysets/#filter
结尾是: 列名_ _endwith
.exclude(参数) 查找不符合参数的数据
.get() 可以根据给定列定位返回数据 例如 Googs.objects.get(gid=1)
更多的查询方式可以查看官网文档
https://docs.djangoproject.com/zh-hans/4.0/ref/models/querysets/#filter
Django管理界面
1.创建管理员账号
python manage.py createsuperuser(指令)
建议手敲
2.启动服务器
python manage serve
3.Django中多语言的翻译功能是默认开启的,需要在settings.py文件进行设置
LANGUAG_CODE
LANGUAG_CODE
4.将app添加到管理站点,在app下的admin.py文件添加站点的注册
Django模版语言
Django中的视图的概念:一类具有相同功能和模版的网页的集合
例如:博客
首页...展示最近的内容
内容详情页面...详细展示某项内容
以年为单位的归档页...按照年份展示内容
以月为单位的归档页...按照月份展示内容
以天为单位的归档页...按照天份展示内容
评论处理器...用于对评论处理
Django提供了模版语言开发HTML页面:将py代码嵌入html中
1.HTML页面放在templates文件
位置:总项目根目录下
位置:app根目录下
2.模版语言
变量
语法:{{变量}}
作用:在指定的位置显示变量的数据
过滤器|
语法:{{变量|过滤器}}
作用:显示数据前会按照过滤器的要求进行筛选
常用过滤器
标签
语法:{%开始标签%}{%结束标签%}
作用:完成指定功能
如何进行html访问
通过在views.py中设置相应的访问
#显示html页面:使用模版形式
def showIndex(request):
#进行模版的加载
template=loader.get_template("index.html")
context={}
return HttpResponse(template.render(context,request));
#显示html页面:使用快捷函数形式
def showIndex(request):
context={
"name":["tom","join"]#py的数据类型都可以被传递
}
return render(request,"index.html",context)
def showIndex(request):
#进行模版的加载
template=loader.get_template("index.html")
context={}
return HttpResponse(template.render(context,request));
#显示html页面:使用快捷函数形式
def showIndex(request):
context={
"name":["tom","join"]#py的数据类型都可以被传递
}
return render(request,"index.html",context)
子主题
案例:实现商品的增删改查操作
*查询全部商品
* 添加和修改商品
子主题
* 删除商品
3. 模板的继承
base.html页面
base.html页面
简介
官网:https://www.djangoproject.com/
Django被设计用于快速开发新闻类的网站
开发B/S结构的框架
a.设计模式
i.可以在python中描述数据库结构
ii.运行Django命令自动创建数据库表
iii.提供对于数据库表的增删改查的功能,无需编写sql
b.URLs
c.视图
d.模版-html
B/S开发
浏览器/服务器 Browse/Service
B/S结构的项目,开发人员只需要开发服务器端的程序即可。程序需要发布到服务器上,由浏览器通过url地址进行访问
B/S的项目
静态
纯html页面,数据不会变化,要想改变显示的信息,则需要改源代码
动态
html页面中的信息,会根据用户的操作发生变化,更改信息,只需要利用后台功能。与用户有交互
子主题
安装
a.检查python是否成功的设置了环境变量
检查环境变量的内容
(1)...../pythonXXX
(2)...../pythonXXX/Scripts
(2)...../pythonXXX/Scripts
b. 安装Django库
i. 在控制台利用 pip install django进行安排
ii. pycharm中的settings中进行安装
项目建立
a. 如果pycharm是企业版本,建立Django项目选项。
b. 如果pycharm是社区版本,首先在控制台用命令建立
django的工程,然后再用pycharm打开。
django的工程,然后再用pycharm打开。
步骤1:首先选择项目要存放的位置,进入此文件夹
步骤2:在此文件夹的地址栏上,输入cmd,打开控制
台窗口,(这样打开的控制台的路径就是当前文件夹内)
台窗口,(这样打开的控制台的路径就是当前文件夹内)
步骤3: 输入django建立项目的指
令:django-admin startproject 项目名称
令:django-admin startproject 项目名称
c. 基础项目结构的介绍
d. 运行manage.py文件,可以查看能够使用的django的相关指令
e. 运行django项目,通过Django自带简易的开发服务器来运行调试项目
i. 启动服务器的指令: python manage.py runserver [端口号]
默认端口是8000
默认端口是8000
ii. 停止服务器的指令:ctrl+c
0 条评论
下一页