我的博客需要Markdown语法。我决定使用python-markdown2 library。我遵循TDD流程,因此我创建了测试,其中我导入了Markdown库并且它工作正常。然后我需要的是转换一些输出,以便所有测试通过。我认为它更像是一个表示逻辑,所以我创建了模板标签,我想在其中导入库......就我所知。问题是我无法导入该库!我调试了几个小时,我仍然找不到原因。
很少有事实:
准确的错误消息:
TemplateSyntaxError at /article/1/foo-bar/
'cheese' is not a valid tag library: ImportError raised loading blog.templatetags.cheese: cannot import name markdown
这是 templatetags / cheese.py :
from django import template
import markdown2
register = template.Library()
@register.filter
def eggs(value):
return value
这是模板:
{% load cheese %}
P.S。如果需要,full error和all code。
答案 0 :(得分:1)
回溯显示github存储库中不存在的内容:templatetags目录中有一个名为markdown2.py
的文件,该文件在cheese
文件import markdown2
时导入。删除此文件,它应该找到正确的文件。
答案 1 :(得分:0)
从控制台,在项目目录中激活Virtualenv,尝试:
pip install markdown2
这帮助了我,遇到了同样的问题。我已经检查过,使用
pip freeze
markdown2实际上并未安装,甚至认为它已在PyCharm中显示。