1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回.通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API. Django奉行DRY主义,提倡使用简洁.优雅的URL,没有.php或.cgi这种后缀,更不会单独使用0.2097.1-1-1928.00这样无意义的东西,让你随心所欲设计你的URL,不…
1.URL路由系统前言 URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应. 在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回.通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API. Django奉行DRY主义,提倡使用简洁.优雅的URL,没有.php或.cgi这种后缀,更不会单独使用0.2097.1-1-1928.00这样无意义的东西,让你随心所欲设计你的URL,不…
Django框架之View.py(视图文件) 1. 视图简介 视图层是Django处理请求的核心代码层,我们大多数Python代码都集中在这一层面. 它对外接收用户请求,对内调度模型层和模版层,统合数据库和前端,最后根据业务逻辑,将处理好的数据,与前端结合,返回给用户.视图层是真正的后端,是Python工程师的‘主营业务’. 视图就是每个创建的APP中的的view.py文件夹.我们处理数据的那些业务逻辑,就都存放(编辑)在这里. Django的视图层包含下面一些主要内容: URL路由 视图函数…
我们昨天登录admin时创建的用户信息是存放在哪里了呢? auth系统的数据表: 从表的名称我们就能看出, auth_user,auth_group,auth_permission分别存放了用户,用户组,权限的信息表.另外三张表就是多对多的关系表 User:User是auth模块中维护用户信息的关系模式(继承了models.Model), 数据库中该表被命名为auth_user. Group:User对象中有一个名为groups的多对多字段, 多对多关系由auth_user_groups数据表维…
---恢复内容开始--- 1. 常用语法 需要记住两组特殊符号:{{  }}  和 {%  %}. 在运用到变量的时候使用{{  }},如果是跟逻辑相关的话就使用{%  %}. 在Django模板(template)中,会使用到的{{  }}  和 {%  %}写法,在专业中就称之为Django的 “ 模板语言 ” 2. 变量 在Django模板中,使用的变量的时候,就是用这个格式:{{ 变量名 }}. 在template模板引擎遇到一个变量的时候,它自动根据python后台中的views模块提…
1.ORM简介 1.1 ORM的概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据库中. ORM在业务逻辑层和数据库层之间充当了桥梁的作用. 1.2 为什么需要ORM? 让我们从O/R开始.字母O起源于"对象"(Object),而R则来自于"关系"(Relational).…
------------恢复内容开始------------ 1.必定会的十三条! 1.1记忆方法一:(按字母顺序记忆)   <1> all(): 查询所有结果 <2> count(): 返回数据库中匹配查询(QuerySet)的对象数量. <3> distinct(): 从返回结果中剔除重复纪录(如果你查询跨越多个表,可能在计算QuerySet时得到重复的结果.此时可以使用distinct(),注意只有在PostgreSQL中支持按字段去重.) <4> e…
1. Django简介 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由Python写成. Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 . 2. MVC框架和MTV框架 2.1 MVC框架 MVC框架,全称角Model View Controller,是软件工程的一种架构模式,这个模式把软件系统分为三个部分:…
大纲 一.内容概要: 二.上节回顾 三.Django 视图–views  1.获取用户多个数据及文件上传  2.FBV 和 CBV  3.装饰器 四.Django模板补充  - Django模板语言循环字典 五.Django 路由系统  1.一对一:一个url对于一个函数或者一个类  2.1.一对多:一类url对应一个函数或者一个类  2.2.一对多,用法总结  3.name参数  4.url 路由分发机制  5.默认值  6.命名空间 一.内容概要: 1.路由系统——urls 2.视图 3.模…
Django框架搭建(windows系统) 一.Django简介 开放源代码的Web应用框架,由Python语言编写,一个大而全的框架. 1.web框架介绍 具体介绍Django之前,必须先介绍WEB框架等概念. web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子. 一般web框架的架构是这样的: 其它基于python的web框架,如tornado.flask.webpy都是在这个范围内进行增删裁剪的.例如tornado用的是自己的异步非阻…
一.基于App的路由 作用: 根据App对路由规则进行分类,在全局urls.py包含某个项目的urls.py 示例 定义全局urls.py(全局路由系统) #导入include from django.conf.urls import url,include from django.contrib import admin #导入app下的view函数 from learn import views urlpatterns = [ url(r'^admin/', admin.site.urls)…
ASP.NET Web API框架揭秘:路由系统的几个核心类型 虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除了对System.Web.dll程序集的依赖,实现在ASP.NET Web API框架中的URL路由系统亦是如此.也就是说,ASP.NET Web API核心框架的URL路由系统与ASP.NET本身的路由系统是相对独立的.但是当我们采用…
##################   路由系统介绍    ####################### 路由系统就是路径和函数的对应关系, 路由系统可以看成支撑你这个网站的目录,就像是一本书一样, 这个url对应关系,就是路由系统, 1,在django2.0中不再是url,而是path,其他的都一样, 2,url里面有四个部分,url(正则表达式,函数,参数,别名) from django.conf.urls import url urlpatterns = [ url(正则表达式, vi…
Django的路由系统 Django 1.11版本 URLConf官方文档 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表. 你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码. URLconf配置 基本格式: from django.conf.urls import url urlpatterns = [ url(正则表达式, views视图函数,参数,别名), ] 注意: Djan…
django 请求流程图 django 路由系统 在django中我们可以通过定义urls,让不同的url路由到不同的处理函数 from . import views urlpatterns = [ url(r'^articles/2003/$', views.special_case_2003), #精确匹配 url(r'^articles/([0-9]{4})/$', views.year_archive), #动态路由 url(r'^articles/([0-9]{4})/([0-9]{2…
所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. 最简单的web框架 import socket sk = socket.socket() sk.bind(()) sk.listen() while True: conn, addr = sk.accept() data = conn.recv() conn.send(b"OK") conn.close() 这个规则就是HTTP协议,以后浏览器发送请求信息…
一.Django路由系统(url) 1.什么是路由系统 路由系统的本质是URL模式以及要为该URL模式调用的视图函数之间的一个映射表即不同的url路径对应的不同的函数,该路由系统是存放在全局配置文件urls.py中,之所以叫路由系统是为了好听 2.路由系统格式: urlpatterns = [url(正则表达式, views视图函数,参数,别名),] 注释:1.正则表达式就是Python中提及到的正则表达式,匹配的是url下的路径    2.视图函数就是url路径对应的函数    3.参数就是需…
一.创建项目 1.命令:django-admin startproject sitename 2.IDLE环境:本质上都是执行上述命令 常用命令: python manage.py runserver 0.0.0.0 (启动服务) python manage.py startapp appname (创建一个Application) python manage.py syncdb() python manage.py makemigrations() python manage.py migra…
一个小问题: 什么是根目录:就是没有路径,只有域名..url(r'^$') 补充一张关于wsgiref模块的图片 一.MTV模型 Django的MTV分别代表: Model(模型):和数据库相关的,负责业务对象与数据库的对象(ORM) Template(模板):放所有的html文件 模板语法:目的是将白变量(数据库的内容)如何巧妙的嵌入到html页面中 View(视图):负责业务逻辑,并在适当的时候调用Model和Template 此外,Django还有一个URL分发器.它的作用是将一个个URL…
1.URL(Uniform Resoure Locator)统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址.互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它. 网址 全球统一资源定位符http://ww.aspxfans.com:8000/news/index/asp?ID=5&page=1#name,{协议}{域名}{路径}{参数#锚点} 2.django的路由系统,当一个请求来到时 1.首先到项目…
###############    MVC架构介绍    ################ # MVC架构 # 一个软件框架有很多的模块,每一个模块有不同的功能 # 模块与模块之间相互配合来完成软件开发, # django遵循的是MVC的框架思想 # MVC的产生理念:分工.就是让专门的人做专门的事, # MVC的核心是:解耦,也就是一个模块和其他模块之间只是配合关联性不大,你升级一个模块只要能完成功能,对其他模块影响不大 # M:model,模型,和数据库进行交互 # V:view,视图,产…
Python web框架 本质 收发socket消息 --> 按照HTTP协议消息格式去解析消息 路径和要执行的函数的对应关系 --> 主要的业务逻辑 字符串替换 --> 模板(特殊符号 --> 数据) 一个完整得请求流程: 0. 启动服务端,等待客户端(用户的浏览器)来连接 1. 在浏览器地址栏输入URL,与服务端建立连接,浏览器发送请求 2. 服务端收到请求消息,解析请求消息,根据路径和函数的对应关系,找到将要执行的函数 3. 执行函数,打开HTML文件,进行字符串替换,得到一…
Django框架 Django是个怎样的东西呢? Web应用框架----Django  http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理. Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户. 新建项目 •新建项目的命令: django-admin startproject projectname •注意: 由于编辑器版本之间的一些差别, 我们统一使用跟编辑器版本无关的通用方式创建项目. 先在命令行创建项目,然后再设置pycharm代码同步. • 1…
架构图: setting.py: INSTALLED_APPS = [ ... 'bootstrap', ] myapp -> myapp -> urls.py from django.conf.urls import url, include from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^bootstrap/', include('bootstrap.urls…
MTV view视图 wsgi函数 def index(request): .... return HttpResponse() 特定的HTTP方法.get,post可以定义单独的方法 继承,多继承,代码分解成可以复用的组件 在urls.py中定义调用类视图 path('index/', views.IndexView.as_view(), name='index'),#类视图的调用,注意加括号 类视图的写法 class IndexView(View):    def get(self,requ…
1.自定义主键字段的创建 AutoFiled(pirmary_key=True) # 一般不会自定义,int类型,自增长 一般不自定义主键. 2.order_by asc desc from django.db.models.function import Lower res = Student.objects.order_by(Lower('name').desc()) 表关系的创建 OneToOne student = models.OneToOneField('Student', on_d…
1.常用的模板标签 -作用是什么? -常用标签 总结:语法 {% tag %} {% endtag %} {% tag 参数 参数 %} 2.模板的继承与引用 -引用 include标签 -继承 extends标签 block 标签在渲染的过程中提供任意的逻辑 标签语法: 由{%和 %} 来定义的, 例如:{%tag%}{ %endtag%} 这个定义是刻意模糊的. 例如,一个标签可以输出内容,作为控制结构,例如“if”语句或“for”循环从数据库中提取内容,甚至可以访问其他的模板标签. 常用标…
服务端假设所有用户提交的数据都是不可信任的,所以Django框架内置了form组件来验证用户提交的信息 form组件的2大功能:       1 验证(显示错误信息)       2 保留用户上次输入的信息                  -- 可以生成html标签应用: class A_Form(Form): 字段=fields.字段类型(默认参数: required=True, widget=widgets.插件(attrs={})) 常用字段:Charfield,RegexField,I…
##################   什么是视图?     ####################### 视图: 1,一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应. 2,响应可以是一张网页的HTML内容(使用render),一个重定向(使用redirect),一个404错误,一个XML文档,或者一张图片. 3,无论视图本身包含什么逻辑,必须要返回响应,否则程序会报错.为了将代码放在某处,大家约定成俗将视图放置在项目(project)…
usrls: from django.contrib import admin from django.urls import path from cmbd import views from django.conf.urls import url urlpatterns = [ path('admin/', admin.site.urls), path('home/', views.Home.as_view()), path('home', views.Home.as_view()), url…