Django 中使用 MarkDown 插件

目录

  • Django 使用 markdown 插件

    • 1 将 markdown 转化为 html
    • 2 使用 markdown 编辑框

Django 使用 markdown 插件

Python-Markdown 插件

安装

pip install markdown

1 将 markdown 转化为 html

models

from django.utils import timezone
from django.db import models
from django.contrib.auth.models import User  # 导入django自带的用户模型
from django.utils.html import mark_safe  # 将字符串标记为安全进行输出
from markdown import markdown  # 导入 markdown 插件,将markdown格式转化为html

class Comment(models.Model):
    topic = models.ForeignKey(Topic, on_delete=models.CASCADE)
    comment_text = models.TextField(max_length=2000)
    author = models.ForeignKey(User, default=1, on_delete=models.CASCADE)
    picture = models.FileField(blank=True, null=True)  # 添加文件类型字段,并默认为空
    pub_date = models.DateTimeField(auto_now_add=True)

    def get_comment_text_md(self):
        """将markdown格式转化为html"""
        return mark_safe(markdown(self.comment_text))

    def __str__(self):
        return self.comment_text

templates:

{% for comment in topic.comment_set.all %}
{{ comment.get_comment_text_md }}
{% endfor %}

此时,模板中通过 get_comment_text_mdconment_text 中的 markdown 文本转化为 html 在前台页面显示。

2 使用 markdown 编辑框

模板中引用

<link  rel="stylesheet"  href="https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.css">

...

<script  src="https://cdn.jsdelivr.net/simplemde/latest/simplemde.min.js"></script>
<script>
var simplemde =  new  SimpleMDE(); // 会寻找当前页面第一个textarea进行渲染
</script>

此时该插件就会在页面中寻找第一个textarea,并进行样式渲染。效果如下。

原文地址:https://www.cnblogs.com/izbw/p/11129439.html

时间: 2024-08-28 07:29:30

Django 中使用 MarkDown 插件的相关文章

在Django中使用markdown

markdown比wiki语法要简单,github上的代码几乎都是readme.md,这种易读易写的脚本语言已经变得非常流行. 关于语法,可参考markdown语法 本片博文简单介绍一下如何在Django中集成markdown的功能 下载python下的markdown解析器. $sudo pip install markdown 或者是 $sudo easy install markdown 其他安装方式可参考markdown的python解析器 在app的models.py中创建一个博文的类

django中 debug-toolbar插件 crm项目补充

django中使用debug-toolbar插件 环境安装: pip install debug-toolbar 在django中的settings中配置以下数据 注册debug-toolbar 中间件中加入 如果是本机测试,需要将127.0.0.1加入到 INTERNAL_IPS 配置jqery中的url 如果在国内无法使用,可以在settings中配置以下, 如果在Django项目中使用了jquery的话就可以直接将这一项置为空,那么django-debug-toolbar 就会使用你项目中

laravel 中引入markdown,html处理插件

1.Purifier:过滤不良的代码插件 composer 中引入 ,git地址 "mews/purifier": "~2.0" php artisan vendor:publish --provider="Mews\Purifier\PurifierServiceProvider" 2.引入html转markdown插件,git地址 "league/html-to-markdown": "^4.2", 3

django中嵌入百度editor插件

一.安装和配置步骤: 1.先下载百度ueditor插件,并安装pip install DjangoUeditor 2.把下载好的ueditor插件放到自己的项目中 3.配置setting INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'djan

给Eclipse安装Markdown插件

Markdown Editor 安装Markdown插件可以实现 .md 和 .txt 文件的 Markdown 语法高亮,并提供 HTML 预览. 因为之前没有安装过别的插件,eclipse上安装插件最好配置好国内镜像源. Help -> Install New Software.. -> Available Software Site. 或者 Window -> Preferences -> Install/Update -> Available Software Sit

(转载)sublime3安装markdown插件

原文链接 http://www.jianshu.com/p/335b7d1be39e?utm_source=tuicool&utm_medium=referral 最近升级到了 Sublime 3 ,于是又涉及到重新安装我喜欢的插件.作为Markdown 的重度使用者自然关于Markdown的插件是必不可少的 (选择在简书中写文章其中一个很重要的原因是因为简书的MarkDown写作环境很舒服). 在这里记录分享一下我常用的两款Markdown插件. MarkdownEditing Markdow

vscode中使用markdown

vscode中使用markdown vscode 是微软推出一款轻量级的文本编辑工具,类似于sublime,由于其拥有丰富的插件,安装使用也非常简单,所以深受广大程序员的喜爱. markdown 是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 印象笔记 是一款具有笔记.写作.日程管理等诸多功能为一体的强大.易用型笔记本,拥有非常丰富的插件,其中比较好用的有印象笔记·剪藏,马克飞象,具体如何使用,请自行查阅相关资料. markdown有许多衍生

20:django中的安全问题

本节主要是讲解django中的安全特性,讲述django是如何应对网站一般面临的安全性问题 跨站点脚本(XXS)攻击 跨站点脚本攻击是指一个用户把客户端脚本注入到其他用户的浏览器中.通常是通过在数据库中存储恶意的脚本,当这些脚本被检索然后展示给其他用户时实现的攻击的,或者诱使 用户点击攻击者的那些会被用户浏览器运行的脚本.django是如何应付的呢? django的模板系统可以预防大部分的XXS攻击,然而我们要知道,django预防了那些,还有那些是预防不了的:django模板使用了”转义特殊字

Eclipse安装Markdown插件

Markdown Editor 安装Markdown插件可以实现 .md 和 .txt 文件的 Markdown 语法高亮,并提供 HTML 预览. 因为之前没有安装过别的插件,eclipse上安装插件最好配置好国内镜像源. Help -> Install New Software.. -> Available Software Site. 或者 Window -> Preferences -> Install/Update -> Available Software Sit