首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pug学习

理解 Pug是一款健壮、灵活、功能丰富的HTML模板引擎,专门为 Node.js 平台开发。Pug是由Jade 改名而来。...直接在标签后面加文本,注意文本和标签之间要有空格     b. 在标签的下一行,对每一行内容前面加管道符号(|)    c. 大的纯文本块只需要在标签后面紧接一个点 . (在标签和点之间不要有空格)。...注释: //  单行注释  //-  非缓冲注释 //(换行) 给模板写的块注释 …   条件注释 5. ...条件循环:if else 判断 和 case 判断 7. mixin混入 是一种允许您在 Pug 中重复使用一整个代码块的方法。...继承与扩展 解决的是子文件和父文件之间的代码复用问题,子文件的代码可以覆盖和扩展父文件的代码 //父文件.pug block test    代码块1 //子文件.pug extends 父文件.pug

1.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    django 1.8 官方文档翻译:4-2-1 Django模版语言

    Django模版语言的设计致力于在性能和简单上取得平衡。 它的设计使习惯于使用HTML的人也能够自如应对。...理念 如果您有过编程背景,或者您使用过一些在HTML中直接混入程序代码的语言,那么现在您需要记住,Django的模版系统并不是简单的将Python嵌入到HTML中。...或者,你可能使用Django的模板系统来生成_不是_HTML的文本 – 比如邮件信息。...自定义库和模板继承 当你加载一个自定义标签或过滤器库时,标签或过滤器只在当前模板中有效 – 并不是带有模板继承关系的任何父模板或者子模版中都有效。...例如,如果一个模板foo.html带有{% load humanize %},子模版(例如,带有{% extends "foo.html" %})中不能 访问humanize模板标签和过滤器。

    1.2K30

    【Hexo基本使用】零基础,快速搭建属于自己的个人博客!

    ⭐Hexo官网:HexoHexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。...Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。...主题问价夹中的source为根目录修改Hexo配置# Hexo的 _config.yml 修改主题theme: butterfly安装依赖# butterfly使用需要安装 pug 以及 stylus...: type: git repository: git@github.com:用户名/用户名.github.io.git # 注意这里的分支 # 看看自己Github使用的分支模板 是 master...近日将博客从Django+Vue更改为了Hexo,自己写的主题水平还是差了很多,暂时也没有精力去维护。欢迎大家一起交流:雪人的小屋 - 无 限 进 步 !

    61040

    django 1.8 官方文档翻译: 3-1-3 Django 的快捷函数

    Django 的快捷函数 django.shortcuts 收集了“跨越” 多层MVC 的辅助函数和类。 换句话讲,这些函数/类为了方便,引入了可控的耦合。...using 用于加载模板使用的模板引擎的名称。 Changed in Django 1.8: 增加using 参数。 Changed in Django 1.7: 增加dirs 参数。...using 加载模板使用的模板引擎的名称。 Changed in Django 1.8: 添加status 和using 参数。...参数可以是: 一个模型:将调用模型的get_absolute_url() 函数 一个视图,可以带有参数:将使用urlresolvers.reverse 来反向解析名称 一个绝对的或相对的URL,将原样作为重定向的位置...return redirect(object) 通过传递一个视图的名称,可以带有位置参数和关键字参数;将使用reverse() 方法反向解析URL: def my_view(request):

    82420

    【Django】 开发:模板语言

    ,'模板文件名', 字典数据) Django 模板语言 模板的传参 模板传参是指把数据形成字典,传参给模板,为模板渲染提供数据 使用 loader 加载模板 t = loader.get_template.../templates/builtins/#built-in-filter-reference 模板的继承 模板继承可以使父模板的内容重用,子模板直接继承父模板的全部内容并可以覆盖父模板中相应的块 定义父模板中的块...'base.html' %} 子模板 重写父模板中的内容块 {% block block_name %} 子模板块用来覆盖父模板中 block_name 块的内容 {% endblock block_name.../2.2/ref/templates/language/#for-template-blocks 模板的继承示例: image.png url 反向解析 url 反向解析是指在视图或模板中,用 path...%} {% url 'person' age='18' name='gxn' %} 在视图函数中 -> 可调用 django 中的 reverse 方法进行反向解析 from django.urls import

    3.3K10

    彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-模板与数据库EP02

    配置模板     Iris支持但不限于下面几种模板引擎: # Name Parser 1 HTML html/template 2 Blocks kataras/blocks 3 Django flosch...yosssi/ace     这里我们使用默认的引擎html/template,参见模板语法文档示例:https://github.com/kataras/iris/tree/master/_examples...随后添加模板配置: tmpl.Delims("${", "}") tmpl.Reload(true) app.RegisterView(tmpl)     这里添加模板的通配符,采用${},避免和Vue...    这只是最简单的模板解析,我们还需要让Iris提供静态文件的服务支持,否则模板将无法加载样式文件或者是Js文件: app.HandleDir("/assets", iris.Dir("..../assets"))     这里将根目录的assets文件作为静态文件目录进行解析。     随后将项目的css文件和js文件放入assets对应目录,接着编写index.html首页模板: <!

    62030

    Django 学习笔记之模板

    这就需要使用到模板(Template)。模板通常是 HTML 文件,只不过其中带有特定的语句。这些语句是用来存储并显示数据库中返回的数据。...另外,除了 HTML 文件外,Django的模板也能产生任何基于文本格式的文档。 我们就以一个简单的例子来开始学习模板。该模板是一段添加了些变量和模板标签的 html 文件。...在每个 {% for %}循环中有一个被称为 ** forloop ** 的模板变量。这变量提供一些带有循环进度信息的属性。 forloop.counter 表示当前循环的执行次数的总数。...因此,不提倡直接在 视图中混入模板内容。 views.py 中的视图函数只负责加载模板文件,模板一般存放到 templates 文件夹中。...Django 提供了一种使用方便且功能强大的 API,用于从本地中加载模板。当你新建一个新的 Django 项目时,在 setting.py 配置文件中有个 **TEMPLATES** 选项。

    2K00

    Pug模板继承与拓展

    Pug 支持使用 block 和 extends 关键字进行模板的继承 block代表一个代码块 一、代码块的替换 如下:便有三个代码块block scripts,block content,block...') body block content block foot #footer p 一些页脚的内容 如替换其中的代码块 在一个新的pug文件中 ,首先要用...extends继承某个pug, 然后定义相同名称的代码块即可实现替换 extends layout.pug block scripts script(src='/jquery.js') script...在覆盖一个代码块的同时在该代码块内添加新的代码块 //- sub-layout.pug extends layout.pug //- 覆盖原有的content代码块,并添加了两个子代码块 sidebar...下面代码实现了在 代码块head里面添加了两个script //- page.pug extends layout.pug block append head script(src='/vendor

    1.2K10

    【Vuejs】509- vue-loader工作原理

    加载器,比如Sass加载和Pug加载 允许.vue文件中的自定义块,这些(自定义块)能够运用于定制的加载程序链 将静态的和的assets...引用视为模块依赖,并且用webpack加载程序去处理他们 模拟每个组件的CSS作用域 在开发的过程中使用热加载保持状态 简而言之,vue-loader和webpack的组合能够使你在写Vue.js应用时...这是整个过程的简要概述 vue-loader使用@vue/component-compiler-utils将SFC源码解析成SFC描述符,然后为每个语言块生成一个导入,实际返回的模块代码看起来像这样...但是对于和,一些额外的任务需要被执行: 我们需要使用Vue模板编译器编译模板 我们需要在css-loader之后但是在style-loader之前,为的请求像下面这样: // pug">import 'vue-loader/template-loader!pug-loader!source.vue?

    1.9K30

    go语言最快最好运用最广的web框架比较(大多数人不了解的特性)

    路由:正则表达式(Router: Regex) 当您可以使用带有过滤器的动态路径向具有过滤器的路径注册处理程序时,应该传递一些处理程序以执行处理程序。...嵌入到应用程序意味着框架支持与go-bindata集成,因此最终的可执行文件包含其中的模板,表示为[]byte。 什么是视图引擎? 当框架支持模板加载,自定义和构建模板功能时,可以在关键部件上完成。...视图引擎:STD 当框架支持通过标准html/template解析器加载模板时。 视图引擎:Pug 当框架支持通过Pug解析器加载模板时。...视图引擎:Django 当框架支持通过Django解析器加载模板时。 视图引擎:Handlebars 当框架支持通过Handlebars解析器加载模板时。...视图引擎:Amber 当框架支持通过Amber解析器加载模板时。

    2.7K40

    Django MVT之T

    在Django MVC概述和开发流程中已经讲解了Django的MVT开发流程,本文重点对MVT中的模板(Template)进行重点讲解。 模板包含两部分: 静态部分: 包含html、css、js。...动态部分: 模板语言。 模板变量 模板变量名是由数字、字母、下划线和点组成的,不能以下划线开头。...变量与过滤器之间通过管道符号“|”连接,使用格式如下 {{ 模板变量 | 过滤器: 参数}} Django内置过滤器的详细介绍参考Django 1.8.2 中文文档。...URL反向解析 Django除了提供了从URL到视图函数的映射,还提供了反向的从映射名到URL的解析功能。使用URL反向解析可以动态生成URL,当URL变化时,不需要手动去更改。...%}   在视图中使用反向解析,需要先导入reverse from django.core.urlresolvers import reverse 1.无参数:reverse('namespace

    1.2K20

    前端工程师为什么要学习编译原理?

    它所使用的 Babylon 实现了编译器中两个部分,词法分析和语法分析。...(baz.qux)) 原因就在于它所设计的文法是左递归的,而 LL 语法分析器是无法做到解析左递归的文法,这时候只能使用 LR 语法分析器的方式,自底向上地构造 AST。...模板引擎 再讲到模板引擎,最早诞生于服务端动态页面的开发,如 JSP、PHP、ASP 等模板引擎,自 Node.js 快速发展以后,前端界又产出了非常多的轮子,包括 EJS、Handlebars、Pug...模板引擎的实现方式有很多种,比较简单的模板引擎,直接利用字符串替换、拼接的方式实现,比较复杂的模板引擎,例如 Pug,则会有比较完整的词法分析和语法分析过程,将模板预编译成 JS 代码再去动态执行。...例如模板语句: h1 hello #{name} 经由 Pug 解析器生成的 AST 如图 6 所示: ?

    1.5K31

    第 09 篇:让博客支持 Markdown 语法和代码高亮

    django 的模板中都会被转义(即显示原始的 HTML 代码,而不是经浏览器渲染后的格式)。...为了解除转义,只需在模板变量后使用 safe 过滤器即可,告诉 django,这段文本是安全的,你什么也不用做。...safe 是 django 模板系统中的过滤器(Filter),可以简单地把它看成是一种函数,其作用是作用于模板变量,将模板变量的值变为经过滤器处理过后的值。...代码高亮我们借助 js 插件来实现,其原理就是 js 解析整个 html 页面,然后找到代码块元素,为代码块中的元素添加样式。...我们使用的插件叫做 highlight.js 和 highlightjs-line-numbers.js,前者提供基础的代码高亮,后者为代码块添加行号。

    59430

    Python中的协议 、鸭子类型 、 抽象基类 、混入类

    抽象方法使用 @abstractmethod 装饰器标记,而且定义体中通常只有文档字符串。...从概念上讲,混入不定义新类型,只是打包方法,便于重用。混入类应该提供某方面的特定行为,只实现少量关系非常紧密的方法并且混入类绝对不能实例化。...Django在这方面做的很好,举一个例子, ListView主要用于从数据库中获取多条记录,它的继承关系如下: ? 整个体系非常清晰,各个类的职责也非常明确,且类的职责从命名就可以读出。...例如 ContextMixin 及其子类负责获取渲染模板所需的模板变量;MultipleObjectMixin 负责从数据库获取模型对应的多条数据;View 负责处理 HTTP 请求(如 get 请求,...好了,了解了这些概念对于python的使用和源码的阅读是非常有用的。希望能对你有帮助!

    1.9K20
    领券