12 2018 档案
摘要:Django使用原生SQL语句操作数据库 Django配置连接数据库: 在操作数据库之前,首先先要连接数据库。这里我们以配置 MySQL 为例来讲解。 Django 连接数据库,不需要单独的创建一个连接对象。只需要在 settings.py 文件中做好数据库相关的配置就可以了。示例代码如下: 在Dj
阅读全文
摘要:MySQL数据库介绍: 在网站开发中,数据库是网站的重要组成部分。只有提供数据库,数据才能够动态的展示,而不是在网页中显示一个静态的页面。数据库有很多,比如有 SQL Server 、 Oracle 、 PostgreSQL 以及 MySQL 等等。 MySQL 由于价格实惠、简单易用、不受平台限制
阅读全文
摘要:加载静态文件: 在一个网页中,不仅仅只有一个 html 骨架,还需要 css 样式文件, js 执行文件以及一些图片等。因此在 DTL 中加载静态文件是一个必须要解决的问题。在 DTL 中,使用 static 标签来加载静态文件。要使用 static 标签,首先需要 {% load static %
阅读全文
摘要:模版结构优化之继承详解: 在前端页面开发中。有些代码是需要重复使用的。这种情况可以使用 include 标签来实现。也可以使用另外一个比较强大的方式来实现,那就是模版继承。模版继承类似于 Python 中的类,在父类中可以先定义好一些变量和方法,然后在子类中实现。模版继承也可以在父模版中先定义好一些
阅读全文
摘要:引入模版: 有时候一些代码是在许多模版中都用到的。如果我们每次都重复的去拷贝代码那肯定不符合项目的规范。一般我们可以把这些重复性的代码抽取出来,就类似于Python中的函数一样,以后想要使用这些代码的时候,就通过 include 包含进来。这个标签就是 include 。示例代码如下: includ
阅读全文
摘要:自定义时间计算过滤器: 有时候经常会在朋友圈、微博中可以看到一条信息发表的时间,并不是具体的时间,而是距离现在多久。比如 刚刚 , 1分钟前 等。这个功能 DTL 是没有内置这样的过滤器的,因此我们可以自定义一个这样的过滤器。 需求: time距离现在的时间间隔1. 如果时间间隔小于1分钟以内,那么
阅读全文
摘要:Django再牛逼,也不可能满足所有需求,所以自定过滤器成了刚需!!! 自定义过滤器步骤: 1、在某个APP中,创建一个名叫:templatetags 包(这个包名必须是:templatetags ,不然django找不到); 2、在templatetags中创建一个py文件——写自己的过滤器(即:
阅读全文
摘要:slice过滤器: 类似于 Python 中的切片操作。示例代码如下: 以上代码将会给 some_list 从 2 开始做切片操作。 stringtags过滤器: 删除字符串中所有的 html 标签。示例代码如下: 如果 value 是 <strong>hello world</strong> ,那
阅读全文
摘要:join过滤器: 类似与 Python 中的 join ,将列表/元组/字符串用指定的字符进行拼接。示例代码如下: 如果 value 是等于 ['a','b','c'] ,那么以上代码将输出 a/b/c 。 length过滤器: 获取一个列表/元组/字符串/字典的长度。示例代码如下: 如果 valu
阅读全文
摘要:default过滤器: 如果值被评估为 False 。比如 [] , "" , None , {} 等这些在 if 判断中为 False 的值,都会使用 default 过滤器提供的默认值。示例代码如下:{{ value|default:"nothing" }}如果 value 是等于一个空的字符串
阅读全文
摘要:date过滤器: date过滤器:将一个日期按照指定的格式,格式化成字符串。示例代码如下: 更多常用时间格式化的方式,见下表:
阅读全文
摘要:为什么需要过滤器: 在DTL中,不支持函数的调用形式‘()’,因此不能给函数传递参数,这将有很大的局限性;而过滤器其实就是一个函数,可以对需要处理的参数进行处理,并且还可以额外接受一个参数(也就是说:最多两个参数); add过滤器: 将传进来的参数添加到原来的值上面。这个过滤器会尝试将 值 和 参数
阅读全文
摘要:verbatim 标签: verbatim 标签:默认在 DTL 模板中是会去解析那些特殊字符的。比如 {% 和 %} 以及 {{ 等。如果你在某个代码片段中不想使用 DTL 的解析引擎。那么你可以把这个代码片段放在 verbatim 标签中。示例代码下: 实例截图如下:
阅读全文
摘要:1、spaceless 标签: spaceless 标签:移除html标签中的空白字符。包括空格、tab键、换行等。示例代码如下: 那么在渲染完成后,会变成以下的代码: spaceless 只会移除html标签之间的空白字符。而不会移除标签与文本之间的空白字符。看以下代码: 这个将不会移除 stro
阅读全文
摘要:url标签使用详解: 在模版中,我们经常要写一些 url ,比如某个 a 标签中需要定义 href 属性。当然如果通过硬编码的方式直接将这个 url 写死在里面也是可以的。但是这样对于以后项目维护可能不是一件好事。因此建议使用这种反转的方式来实现,类似于 django 中的 reverse 一样。示
阅读全文
摘要:with标签使用详解: 1、在模板中享用使用变量,可以通过 with 语句实现; 2、with 有两种用法,具体情况如下 ( 包括注意事项 ) : index.html: views.py: url.py:
阅读全文
摘要:for标签使用详解: for...in... 标签: for...in... 类似于 Python 中的 for...in... 。可以遍历列表、元组、字符串、字典等一切可以遍历的对象。示例代码如下: 如果想要反向遍历,那么在遍历的时候就加上一个 reversed 。示例代码如下: 遍历字典的时候,
阅读全文
摘要:if标签使用详解: if 标签: if 标签相当于 Python 中的 if 语句,有 elif 和 else 相对应,但是所有的标签都需要用标签符号 {% %} 进行包裹。 if 标签中可以使用 ==、!=、<、<=、>、>=、in、notin、is、is not 等判断运算符。示例代码如下: 一
阅读全文
摘要:模版变量使用: 模板中可以包含变量, Django 在渲染模板的时候,可以传递变量对应的值过去进行替换。变量的命名规范和 Python 非常类似,只能是阿拉伯数字和英文字符以及下划线的组合,不能出现标点符号等特殊字符。变量需要通过视图函数渲染,视图函数在使用 render(或 render_to_s
阅读全文
摘要:模版查找路径配置: 在项目的 settings.py 文件中。有一个 TEMPLATES 配置,这个配置包含了模板引擎的配置,模板查找路径的配置,模板上下文的配置等。模板路径可以在两个地方配置。 1、DIRS :这是一个列表,在这个列表中可以存放所有的模板路径,以后在视图中使用 render (或r
阅读全文
摘要:模板 在之前的章节中,视图函数只是直接返回文本,而在实际生产环境中其实很少这样用,因为实际的页面大多是带有样式的HTML代码,这可以让浏览器渲染出非常漂亮的页面。目前市面上有非常多的模板系统,其中最知名最好用的就是DTL和Jinja2。 DTL 是 Django Template Language
阅读全文
摘要:默认参数的使用: 废话不多说直接上截图吧, 第一步:写两个视图,一个无参,一个有参; 第二步:
阅读全文
摘要:1、实现如下需求:用户可以根据articles/list/方式获取文章,其中文章分类是采用如下分类,实例如下: 第一种:获取python分类下的文章:/article/python/ 第二种:获取python和django分类下的文章:/article/python+django 第三种:获取pyt
阅读全文
摘要:补充reverse两点: 1、如若在反转url时,需要添加参数,那么可以传递 kwargs 参数到 reverse 函数中,实例代码如下: 2、如若想添加查询字符串参数,则必须手动进行url拼接,实例代码如下(url基于上图):
阅读全文
摘要:re_path使用: 1、re_path和path的作用是一样的,只不过re_path在写url的时候可以使用正则表达式——功能更加强大; 2、使用正则表达式时,推荐使用原生字符串(即:已 r 开头的字符串); 3、在正则表达式中定义变量,需要使用小括号括起来(例如匹配年份的表达式:(?P<year
阅读全文
摘要:include函数详解(了解——虽然用的很少): include函数的用法,目前有三种使用方式: 1、include(module,namespace=None): module:子url的模块字符串(即:app); namespace:实例命名空间;这个地方要注意一点,如果指定实例命名空间,那么前
阅读全文
摘要:应用命名空间和实例命名空间: 什么是实例命名空间:就是多个url映射到同一个app上,如下代码便是: 如下图: 基于上节(应用命名空间——016)的情况会出现什么情况呢? 1、想看一下cms里的情况,如下图: 访问:http://127.0.0.1:8000/cms1/跳转到:http://127.
阅读全文
摘要:为什么需要URL命名? 主要解决蛋疼url变化情况,比如:哪天项目经理或领导过来说,把login改成signin,把register改成signup等蛋疼的需求——因为一旦改了url后,相关视图函数里的url反转也要修改,假设这样的情况很多,需花费很长的时间调整(我们应该节约这样的时间:回家陪老婆孩
阅读全文
摘要:URLs分层模块化: 经过上面的14节课程,大伙有没有发现一个问题:那就是随着的项目功能模块越来越多,所有url匹配都写在一个urls.py文件中,其结果是:文件长,看着心累——需要分门别类;因此能不能将与某个APP相关url都放到相关app中的urls.py文件中:答案是肯定的; 一般我们会在每个
阅读全文
摘要:Django内置的URL转换器: 上节中我们说了URL中传参的情况,传递参数是通过 <> 尖括号来进行指定的。并且在传递参数的时候,可以指定这个参数的数据类型,比如文章的 id 都是 int 类型,那么可以这样写 <int:id> ,以后匹配的时候,就只会匹配到 id 为 int 类型的 url ,
阅读全文
摘要:URL传参数有两种方式: 1、采用在URL中使用变量的方式:在path的第一个参数中,使用'<参数名>'的方式可以传递参数,然后在对于的视图函数中也要写一个参数,并且视图函数中的参数名和URL中的参数名称必须保持一致,否则没法找到这个参数;另外,在URL中可以传递多个参数,下面是传递两个参数的实例:
阅读全文
摘要:URL映射: 1、为什么Django回去url.py文件中寻找映射呢? 答:应为在项目的setting.py文件中配置了:ROOT_URLCONF变量,此变量中设置为:urls.py 所以django会去urls.py中寻找; 2、在urls.py中所有的映射,都应该放在:urlpatterns变量
阅读全文
摘要:视图: 视图一般都写在 app 的 views.py 中。并且视图的第一个参数永远都是 request (一个HttpRequest)对象。这个对象存储了请求过来的所有信息,包括携带的参数以及一些头部信息等。在视图中,一般是完成逻辑相关的操作。比如这个请求是添加一篇博客,那么可以通过request来
阅读全文
摘要:Debug模式: 1、创建的Django项目默认就开启debug模式,所以以后我们修改了Django项目代码,然后使用Ctrl + s保存;那么Django项目就会自动重启并加载我们修改后台的代码——无需手动重启; 2、开启Django项目debug模式,在开发、测试过程中出现的bug,将在浏览器中
阅读全文
摘要:前戏: 废话少数,先简单的体验一下URL,具体项目文件代码如下: 运行此项目,访问如下地址,返回如下情况,如下图: 这里代码比较少,担当代码稍微多一点,你就能感觉到:所有的代码都写在一个文件里,很没有条理、规范性,更没法看了;所以Django使用功能模块方式管理工程——APP; Django推荐的项
阅读全文
摘要:pycharm运行项目: 使用pycharm运行项目,并运行局域网内部用户访问;主要要修改如下地方(包括修改端口),具体请看下图: 项目结构介绍: project和app的关系: app 是 django 项目的组成部分。一个 app 代表项目中的一个模块,所有 URL 请求的响应都是由 app 来
阅读全文
摘要:创建 Django 项目的方式: 1、命令行方式创建项目和APP: 1.1、创建项目:打开WINDOWS的cmd窗口,使用命令:django-admin startproject [项目名称]即可创建,比如:django-admin startproject first_project 1.2、创建
阅读全文
摘要:Django介绍: Django,发音为[`dʒæŋɡəʊ],Django诞生于2003年秋天,2005年发布正式版本,由Simon和Andrian开发。当时两位作者的老板和记者要他们几天甚至几个小时之内增加新的功能。两人不得已开发了Django这套框架以实现快速开发目的,因此Django生来就是为
阅读全文
摘要:在学习 Django 之前,需要做好以下准备工作: 1. 确保已经安装 Python 3.6 以上的版本,教学以 Python 3.6 版本进行讲解。 2. 安装 virtualenvwrapper ,这个是用来创建虚拟环境的包,使用虚拟环境可以让我们的包管理更加的方便,也为以后项目上线需要安装哪些
阅读全文
摘要:URL是什么 URL 是 Uniform Resource Locator 的简写,统一资源定位符。 一个 URL 由以下几部分组成: scheme:代表的是访问的协议,一般为 http 或者 https 以及 ftp 等。 host:主机名,域名,比如 www.baidu.com 。 port:端
阅读全文
摘要:为什么要使用:virtualenvwrapper virtualenvwrapper 软件包可以让我们管理虚拟环境变得更加简单。(virtualenv)不用再跑到某个目录下通过 virtualenv 来创建虚拟环境,并且激活的时候也要跑到具体的目录下去激活。 安装 virtualenvwrapper
阅读全文
摘要:前戏: 1、安装python解释器,建议安装时选上添加到系统,具体情况如下图: 2、PyCharm安装就不说了,主要的是安装专业版(社区版没有django、flask等功能,至于破解——你懂的); 安装 virtualenv : virtualenv 是用来创建虚拟环境的软件工具,我们可以通过 pi
阅读全文
摘要:为什么需要虚拟环境: 到目前位置,我们所有的第三方包安装都是直接通过 pip install *** 的方式进行安装的,这样安装会将那个包安装到你的系统级的 Python 环境中。但是这样有一个问题,就是如果你现在用 Django 1.10.x 写了个网站,然后你的领导跟你说,之前有一个旧项目是用
阅读全文
摘要:1.virtualenv virtualenv 的作用:为单个项目创建独立的python虚拟环境 virtualenv的使用 : 1.通过如下命令安装virtualenv 2.创建虚拟环境: 创建默认虚拟环境: 此命令表示创建一个名为env27的虚拟环境。每个虚拟环境都包含一个独立的env27/bi
阅读全文

浙公网安备 33010602011771号