如何在django 1.6中满足django.contrib.markup.templatetags.markup导入restructuredtext?

时间:2013-11-18 18:56:18

标签: django importerror restructuredtext

想知道你们大多数人在django 1.5 +中使用了哪个重组的包?

from django.contrib.markup.templatetags.markup import restructuredtext

返回:

ImportError ...
No module named markup.templatetags.markup

https://docs.djangoproject.com/en/1.6/releases/1.5-alpha-1/#django-utils-markup

2 个答案:

答案 0 :(得分:6)

是的,django.utils.markup在1.5中已弃用,在1.6中已删除。 reStructuredText标记的Python实现存在于docutils包中。这是Django< = 1.5使用的实现。

安装docutils的最简单方法是使用pip:

pip install docutils

你可以在Djangos github repo的1.5.x分支中找到旧的django.utils.markup实现:

https://github.com/django/django/blob/stable/1.5.x/django/contrib/markup/templatetags/markup.py#L76

答案 1 :(得分:0)

这是@jbub答案的补充:

如果您有旧的Django应用程序并且想要继续使用标记,请按照以下步骤操作:

请注意,此过程可使旧应用程序保持正常运行。但是,django.contrib.markup的弃用有一个原因:使用降价可能存在跨站点脚本攻击的安全问题。你可以自己解决这个问题。