Django中的自定义标记

时间:2009-06-01 03:53:09

标签: python django markdown

任何人都可以给我一个想法或者一些关于如何使用textile或Markdown为django创建自定义标记的参考(或者我在这里想错了)?

例如:我想转换以下标记(外括号表示它们被分组为一个标记:
[
[联系人]
*联系#1
*联系#2
*联系#3
[朋友请求]
*何塞 ]

将它们转换为:

<div class="tabs">  
    <ul> 
        <li class="tab">Contacts</li> 
        <li>Contact #1</li>
        (etc.. etc..)
    </ul>
</div>  

或者是否正在为我的需求推荐正则表达式?

4 个答案:

答案 0 :(得分:3)

内置的markup应用使用过滤器模板标记来呈现纺织品,降价和重组文字。如果这不是你想要的,另一个选择是使用'标记'字段。如,

class TownHallUpdate(models.Model):
    content = models.TextField()
    content_html = models.TextField(editable=False)

    def save(self, **kwargs):
        self.content_html = textile.textile(sanitize_html(self.content))
    super(TownHallUpdate, self).save(**kwargs)

James Tauber(和Brian Rosner的)django patterns谈话的例子。

答案 1 :(得分:1)

Django附带一个内置的contrib应用程序,它提供了使用多种不同标记语言显示数据的过滤器,包括纺织品和降价。

有关详细信息,请参阅the relevant docs

答案 2 :(得分:0)

使用this

进行快速谷歌搜索

答案 3 :(得分:0)

似乎最好的方法仍然是使用正则表达式并创建我自己的过滤器。

这里有一些帮助我的链接:
http://showmedo.com/videos/video?name=1100010&fromSeriesID=110
http://www.smashingmagazine.com/2009/05/06/introduction-to-advanced-regular-expressions/

希望这可以帮助那些遇到与我同样问题的人!