以最少的工作量将预呈现的标记字段添加到django模型中。
django-markup-mixin的Python项目详细描述
一个简单的django可重用应用程序,用于对模型中的字段提供标记控制。现在这是相当黑在一起,但随着时间的推移,应该变得更强大。不管怎样,我已经发现它在很多地方很有用了。
大利益?您可以同时提供标记字段和呈现内容字段,这意味着每个模板的昂贵标记呈现操作只能降级到最简单的文本区域。大内容区域可以在每次模型保存时重新呈现。
安装
三个简单的步骤!
-
在安装的应用程序中放置“标记混合”。
添加:
from markup-mixin.models import MarkupMixin
- class YourModel(MarkupMixin):
…
在模型上设置标记字段选项:
- def MarkupOptions:
source_field = <your markup content field> rendered_field = <your rendered content field>
就这样。一个主要的警告,因为这个项目的杂乱性质,^ {STR 1 } $你必须将MARKUPIXIN放在模型继承列表的前面!这个问题最终应该解决,但现在它与如何重写模型的save()函数有关。
用法
按照上述步骤,管理已标记的项目相当简单:
>>> obj = YourModel.objects.get(pk=1) >>> obj.content u'This is a markdown **formated** text area.' >>> obj.rendered_content u'<p>This is a markdown <strong>formated</formated> text area.</p>'
未来
找出为什么它必须首先出现在继承列表中,甚至可能添加对多个标记呈现字段的支持。