当前位置: 首页 > news >正文

企业免费网站模板品牌高端网站制作机构

企业免费网站模板,品牌高端网站制作机构,espcms易思企业网站管理系统破解,成立门户网站建设工作小组文章目录0.前言1.安装 Python Markdown2.在 detail 视图中解析 Markdown3.safe 标签4.代码高亮5.效果展示0.前言 Markdown 是一种 HTML 文本标记语言#xff0c;只要遵循它约定的语法格式#xff0c;Markdown 的解析工具就能够把 Markdown 文档转换为标准的 HTML 文档#… 文章目录0.前言1.安装 Python Markdown2.在 detail 视图中解析 Markdown3.safe 标签4.代码高亮5.效果展示0.前言 Markdown 是一种 HTML 文本标记语言只要遵循它约定的语法格式Markdown 的解析工具就能够把 Markdown 文档转换为标准的 HTML 文档从而使文章呈现更加丰富的格式例如标题、列表、代码块等等 HTML 元素。 1.安装 Python Markdown 将 Markdown 格式的文本解析成标准的 HTML 文档是一个复杂的工程好在已有好心人帮我们完成了这些工作直接拿来使用即可。首先安装 Markdown这是一个 Python 第三方库在项目根目录下运行命令 pipenv install markdown 2.在 detail 视图中解析 Markdown 将 Markdown 格式的文本解析成 HTML 文本非常简单只需调用这个库的 markdown 方法。我们书写的博客文章内容存在 Post 的 body 属性里回到我们的详情页视图函数对 post 的 body 的值做一下解析把 Markdown 文本转为 HTML 文本再传递给模板 文件位置blog/views.py import markdown from django.shortcuts import get_object_or_404, renderfrom .models import Postdef detail(request, pk):post get_object_or_404(Post, pkpk)post.body markdown.markdown(post.body,extensions[markdown.extensions.extra,markdown.extensions.codehilite,markdown.extensions.toc,])return render(request, blog/detail.html, context{post: post})这样我们在模板中显示 {{ post.body }} 的时候就不再是原始的 Markdown 文本了而是解析过后的 HTML 文本。 注意这里我们给 markdown 解析函数传递了额外的参数 extensions它是对 Markdown 语法的拓展这里使用了三个拓展分别是 extra、codehilite、toc。extra 本身包含很多基础拓展而 codehilite 是语法高亮拓展这为后面的实现代码高亮功能提供基础而 toc 则允许自动生成目录。 Markdown——入门指南戳这里 Markdown 语法说明戳这里 3.safe 标签 如果此时运行服务器在发布的文章详情页会出现类似于一堆乱码一样的 HTML 标签这些标签本应该在浏览器显示它自身的格式但是 django 出于安全方面的考虑任何的 HTML 代码在 django 的模板中都会被转义即显示原始的 HTML 代码而不是经浏览器渲染后的格式。 为了解除转义只需在模板变量后使用 safe 过滤器即可告诉 django这段文本是安全的你什么也不用做。在模板中找到展示博客文章内容的 {{ post.body }} 部分为其加上 safe 过滤器{{ post.body|safe }} 4.代码高亮 代码高亮我们借助 js 插件来实现其原理就是 js 解析整个 html 页面然后找到代码块元素为代码块中的元素添加样式。我们使用的插件叫做 highlight.js 和 highlightjs-line-numbers.js前者提供基础的代码高亮后者为代码块添加行号。 首先在 base.html 的 head 标签里引入代码高亮的样式有多种样式供你选择这里我们选择 GitHub 主题的样式。样式文件直接通过 CDN 引入同时在 style 标签里自定义了一点元素样式使得代码块的显示效果更加完美。 head...link hrefhttps://cdn.bootcss.com/highlight.js/9.15.8/styles/github.min.css relstylesheetstyle.codehilite {padding: 0;}/* for block of numbers */.hljs-ln-numbers {-webkit-touch-callout: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;text-align: center;color: #ccc;border-right: 1px solid #CCC;vertical-align: top;padding-right: 5px;}.hljs-ln-n {width: 30px;}/* for block of code */.hljs-ln .hljs-ln-code {padding-left: 10px;white-space: pre;}/style /head然后是引入 js 文件因为应该等整个页面加载完插件再去解析代码块所以把 js 文件的引入放在 body 底部 bodyscript srchttps://cdn.bootcss.com/highlight.js/9.15.8/highlight.min.js/scriptscript srchttps://cdn.bootcss.com/highlightjs-line-numbers.js/2.7.0/highlightjs-line-numbers.min.js/scriptscripthljs.initHighlightingOnLoad();hljs.initLineNumbersOnLoad();/script /body5.效果展示 在后台添加Markdown格式文章如下 运行服务器效果如下
http://www.yutouwan.com/news/481694/

相关文章:

  • 最新网站制作发帖子最好的几个网站
  • 加强政务公开网站建设江西建设门户网站
  • 公司网站制作税目精准营销策略
  • 网站域名到期叫合肥响应网站案例
  • 微信官方网站公众平台手机端网站加盟
  • 爱做电影网站珠海网站制作软件
  • 金融网站建站河北建筑工程学院招生网官网
  • 南京网站建设网站制作 雷仁网络网站蓝色和红色搭配
  • html商业网站模板旅游网站建设分析
  • 企业级网站开发原理图旅游目的地网站建设的流程
  • 做百科的网站福田蒙派克e
  • 网站建设好的公司哪家好购物网站成品
  • 网站怎么才可以不备案铁盒 东莞网站建设
  • 在广州开发一个营销网站多少钱免费网站下载直播软件免费
  • 网站开发需要多少钱价格网站备案 拍照网点
  • 佳木斯网站设计高品质的网站开发公
  • 站长素材音效下载美团先做网站还是app
  • 网站制作动黄岐网站制作
  • 北京 科技网站建设郑州电力高等专科学校招生办电话
  • 软件下载网站排行榜前十名网站显示备案号
  • 合肥网站制作价格建设官方网站企业登录入口
  • 做网站交接需要哪些权限代做网页设计作业
  • 房地产网站建设平台WordPress文章模板修改
  • 百度站长平台链接漫画交流网站怎么做
  • 怎么样建设个人网站wordpress媒体库分类
  • 做业务不花钱的网站有哪些系统开发的大概步骤
  • 张家界商城网站建设wordpress删除角色名
  • 小程序和网站开发难度谷歌优化排名哪家强
  • 做网站各个流程深圳网站搭建哪里找
  • 免费网站下载大全海南最新消息