在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中创建一个博文的类Post

class Category(models.Model):
    name = models.CharField(max_length=20)

    def __unicode__(self):
        return self.name

class Post(models.Model):
    category = models.ForeignKey(Category)
    title = models.CharField(max_length=60)
    body = models.TextField()
    date = models.DateTimeField(auto_now_add=True)

    def __unicode__(self):
        return self.title

在view中使用markdown

导入包

from markdown import markdown

解析post.body

    for post in posts:
        post.body = markdown(post.body)

后台编辑博文

添加如下内容

> ## This is a header.
>
> 1.   This is the first list item.
> 2.   This is the second list item.
>
> Here‘s some example code:
>
>     return shell_exec("echo $input | $markdown_script");

前端显示效果

在Django中使用markdown,布布扣,bubuko.com

时间: 2024-10-14 21:06:11

在Django中使用markdown的相关文章

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.mod

Django中的URL配置和模板

Django中的URL配置 : 实例: Python代码   urlpatterns = patterns('', # Example: # (r'^myweb/', include('myweb.foo.urls')), # Uncomment the admin/doc line below and add 'django.contrib.admindocs' # to INSTALLED_APPS to enable admin documentation: # (r'^admin/doc

django中的发送邮件功能

Django中内置了邮件发送功能,被定义在django.core.mail模块中发送邮件需要使用SMTP服务器, 常用的免费服务器有:163.126.QQ,下面以163邮件为例子: 注册163邮箱, 登录后设置--->POP3/SMTP/IMAP   中打开开发者模式 客户端的授权码' 的在项目的settings.py中加上 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.163.c

django中的FBV和CBV

django中请求处理方式有2种:FBV 和 CBV 一.FBV FBV(function base views) 就是在视图里使用函数处理请求. 看代码: urls.py from django.conf.urls import url, include # from django.contrib import admin from mytest import views urlpatterns = [ # url(r'^admin/', admin.site.urls), url(r'^in

MAC中Django中runserver提示Can't connect to local MySQL server through socket '/tmp/mysql.sock错误

好像不止遇到一次,直接Google就可以了,在stackoverflow中就有答案,答案就是你没有开MySQL - -. stackoverflow链接见 http://stackoverflow.com/questions/16325607/cant-connect-to-local-mysql-server-through-socket-tmp-mysql-sock 开启MySQL的命令如下: mysql.server start MAC中Django中runserver提示Can't co

django中models和forms阅读笔记

一.使用数据库需要设置settings.py文件. DATABASES = { 'default': { 'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': '', # Or path to database file if using sqlite3. 'USER': '', # Not used with sqlite3. 'PASSWORD

django中migration文件是干啥的

昨天很蠢的问leader git push的时候会不会把本地的数据库文件上传上去,意思是django中那些migration文件修改之后会不会上传. 然后得知不会,因为所有的数据库都存在本机的mysql啊,怎么可能传过去呢?然后同时还有.gitignore文件啊,过滤了很多文件. 同时我以为migration文件就是数据库文件,然而实际上是什么呢? 是操作数据库的文件,会通过这个去创建一系列的表.看看内容就知道了: class Migration(SchemaMigration): def fo

Django中如何使用django-celery完成异步任务1(转)

原文链接: http://www.weiguda.com/blog/73/ 本篇博文主要介绍在开发环境中的celery使用,请勿用于部署服务器. 许多Django应用需要执行异步任务, 以便不耽误http request的执行. 我们也可以选择许多方法来完成异步任务, 使用Celery是一个比较好的选择, 因为Celery 有着大量的社区支持, 能够完美的扩展, 和Django结合的也很好. Celery不仅能在Django中使用, 还能在其他地方被大量的使用. 因此一旦学会使用Celery,

django中的静态文件管理

一个站点通常需要保存额外的文件,比如图片   css样式文件   js脚本文件 ,在django中,倾向于将这些文件称为 静态文件.django提供了django.contrib.staticfiles 模块来帮助我们方便的管理静态文件. 配置静态文件的两种方式: 1  配置单独app下的静态文件,比如某个app下的单独的图片. 2  配置整个project下的静态文件,适用于那些和单独app关联不大的文件,比如jquery  bootstrap  等等 配置步骤: 1  首先,我们需要确认在s