当前位置: 首页 > 后端技术 > Python

django全知识要点笔记集合,近50页,从基础到深入理解django开发(第一期)

时间:2023-03-26 18:30:45 Python

django知识点全知识点笔记合集,近50页,从基础到深入理解django开发(第一期)本期笔记内容Django框架主要内容项目创建与运行配置文件路由配置(View)请求与响应对象(View)类视图(View)中间件数据库(Model)模板(Template)admin站点管理Django简介官网版1.11英文文档版本1.11中文文档DjangoBookTutorial一、介绍Django,**读作[`d?ae?ɡ??]**,是一个用python语言编写的开源web开发框架,遵循MVC设计。LawrencePublishingGroup开发了新闻网站框架,并于2005年7月在BSD许可下发布。这个名字来自比利时爵士乐音乐家DjangoReinhardt,他是一位主要弹吉他和小提琴的吉普赛人。**由于近几年Django的快速发展,Django的应用越来越广泛。被著名IT开发杂志SDTimes评选为2013年SDTimes100,在“API、库和框架”类别中排名第6,被认为是该领域的佼佼者。**Django的主要目的是方便快捷地开发数据库驱动的网站。**强调代码复用,多个组件可以很方便的以“插件”的形式服务于整个框架。Django有很多强大的第三方插件,你甚至可以轻松开发自己的工具包。这使得Django高度可扩展。它还强调快速开发和DRY(DoNotRepeatYourself)原则。与Flask框架相比,Django属于重量级框架。Django原生提供了很多功能组件,让开发变得更简单、更快捷。数据库ORM支持模板形式认证权限Admin管理站点会话机制缓存2.WebMVC模式80年代为Smalltalk语言发明的一种软件框架模式。它最初用于桌面程序开发,现在被广泛使用,包括网页开发。MVC:Model-View-ControllerModel-View-ControllerM:模型层,负责数据处理,包括数据的增删改查等操作V:视图层,负责界面展示C:控制器层,负责逻辑控制、接收和处理请求、调用模型和视图核心思想:分层、解耦。MVC将数据处理和界面显示的代码分离,使得一侧代码的修改不会影响到另一侧,提高了程序的扩展性和可维护性。Web开发中的MVC:3.Django的MVT模式DjangoMVT模式M:模型,模型与MVC中的M相同,负责数据处理V:View,视图类似于MVC中的C,负责处理用户请求,调用M和T,响应请求T:Template,模板类似于MVC中的V,负责如何显示数据(生成html界面)说明:Django也是一个MVC框架,只是名字不同Django沿用了MVC模式紧密,但是它在实现中确实使用了自己的逻辑。因为“C”是框架本身处理的关于MVT的名称,____工程构建学习目标掌握虚拟环境的使用掌握Django项目和应用程序的创建掌握Django项目的操作掌握Django视图和模板的使用初步虚拟环境安装使用1.创建虚拟环境mkvirtualenvdjango_py3-ppython3注意:需要联网2.安装Djangopipinstalldjango==3.9.133。相关命令#虚拟环境mkvirtualenv#创建虚拟环境rmvirtualenv#删除虚拟环境workon#进入虚拟环境并查看所有虚拟环境deactivate#退出虚拟环境#pippipinstall#安装依赖包pipuninstall#卸载依赖包piplist#查看已安装的依赖包django(3.9.13)pipfreeze#查看已安装的依赖包django==3.9.13____Django项目及应用创建1.项目组织结构一个Project包含多个Apps一个App是一个Python包,代表一个功能模块,如:用户模块、商品模块等。保持相对独立性,以包的形式组织代码,方便功能模块的复用2.创建项目的两种方式通过pycharm创建通过命令行创建1.创建项目通过pycharm项目创建后结构如下:2.通过命令创建项目:django-adminstartproject项目名称创建应用:pythonmanage.pystartapp应用名称创建项目创建Django项目首先进入虚拟环境:workon虚拟环境名称2.使用如下命令创建一个Django项目:django-adminstartprojectprojectname#例子:要创建的项目名为Django02django-adminstartprojectDjango02创建一个应用,首先进入项目根目录:cd项目根目录2.执行以下命令创建anapplication#manage.py在上面创建项目时自动生成管理文件pythonmanage.pystartappapplicationname#例子:pythonmanage.pystartappusers____运行webserverDjango自带一个纯python编写的webserver,使用开发阶段,用于网站效果预览和开发调试。通过Pycharm运行Django内置的Web服务器有三种方式。通过命令运行1.通过Pycharm运行1.点击运行按钮,如下2.运行后,在`run`窗口中,可以看到服务器打印的日志信息,如下:3.可以手动指定服务器运行的ip和端口。如果不指定默认值:`127.0.0.1:8000`2.通过命令运行【了解】运行web服务器的命令:pythonmanage.pyrunserverip:port或者:pythonmanage.pyrunserver注意:需要先在终端进入项目的根目录,然后不用写IP和端口就可以通过上面的命令启动服务器。默认IP为127.0.0.1,默认端口为8000,按ctrl+c即可停止服务器3.测试服务器是否启动。在浏览器中输入网址127.0.0.1:8000可以看到效果,如下,说明服务器启动成功____视图模板初步使用Django中的视图和Flask框架一样,Django也是使用视图来写业务逻辑用于网络应用程序。Django的视图也是一个函数,可以称为视图函数。应用程序的views.py文件中定义的视图需要绑定一个URL地址(路由),才能被Django框架找到并调用。一、视图的初始使用需求:编写视图并配置URL(路由)实现一个展示界面1、需求:当访问URL地址`http://127.0.0.1:8000/users/index`时浏览器,显示`hellodjango`信息2.实现:1.需要写一个视图函数2.配置视图的访问路由1.创建视图打开刚刚创建的users模块,在views中编写视图代码。py。fromdjango.httpimportHttpResponsedefindex(request):"""访问首页的视图"""returnHttpResponse("hellodjango")关于视图的解释:关于视图【理解】视图没有被主动调用由开发人员,但它是由Django框架调用的。当Django收到请求后,会进行常规的URL匹配,并调用相应的视图。在调用视图时,Django会将请求信息封装成一个HttpRequest对象,作为视图的第一个参数传入。Parameters必须定义视图的第一个参数,名称可以自定义,但习惯名称为request,类型为HttpRequest。如果缺少该参数,Django在调用视图时将无法传入HttpRequest对象。关于视图的返回值,视图必须返回一个HttpResponse对象(或其子类对象)不能像Flask那样直接返回一个字符串。HttpRequest请求对象由Django创建,HttpResponse响应对象由开发者创建。2、在项目下的urls.py文件中配置url(路由)。路由配置如下:#注意:urlpatterns是一个列表urlpatterns=[...#配置路由和视图:http://127.0.0.1:8000/users/index#参数一:正则表达式匹配url#参数二:匹配成功后Django框架调用的视图函数url(r'^users/index$',views.index),]注:这只是初步配置,为了简单操作,后面会进一步配置url稍后解释。3、在浏览器中测试在浏览器中输入网址http://127.0.0.1:8000/users/index,确认是否执行了视图的逻辑,返回hellodjango信息`在创建模板文件目录。在视图函数中,使用render()方法渲染模板,获取HttpResponse对象并返回defindex(request):#renderreturnstheHttpResponseobjectreturnrender(request,'index.html')2.额外的项目配置[注意]对于命令行创建的项目,需要手动创建一个模板目录并进行配置;如果项目是Pycharm创建的,则无需额外操作1.在项目根目录下创建`templates`模板目录,后续开发中模板文件都会放在该目录下。2、在`setting.py`项目配置文件中,进行如下配置:____本期结论学习是一件很有趣的事情。没有什么比成长更令人愉快的了。大家可以跟着练习,让我们一起期待下期吧~完整笔记在这里:https://pan.baidu.com/s/16J7Y...