블로그에 Markdown 구문이 필요했습니다. 나는 python-markdown2 library을 사용하기로 결정했다. TDD 프로세스를 따라 Markdown 라이브러리를 가져온 테스트를 만들었고 작동했습니다. 그렇다면 모든 테스트가 통과 할 수 있도록 일부 출력을 변환해야했습니다. 저는 이것이 프레젠테이션 로직과 같다고 생각합니다. 그래서 라이브러리를 가져오고 싶은 템플리트 태그를 만들었습니다. 문제는 그 라이브러리를 가져올 수 없다는 것입니다! 몇 시간 동안 디버깅을했는데 이유를 찾을 수 없습니다.템플릿 태그에서 Markdown2 가져 오기
몇 가지 사실 :
- 그것은 전에 tests.py 수입 것 (그래서 존재), 외부 라이브러리를 사용하지 않고
- 는, 템플릿 태그가 잘 작동;
정확한 오류 메시지 : 여기
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 :
{% load cheese %}
추신 :
from django import template
import markdown2
register = template.Library()
@register.filter
def eggs(value):
return value
여기 템플릿입니다 필요한 경우 full error 및 all code. cheese
파일이 import markdown2
을 수행 할 때 가져 markdown2.py
라는 templatetags 디렉토리에 파일이 :
대화 형 셸에서 '치즈 가져 오기'를 시도하면 어떻게됩니까? – Claudiu
@Claudiu https://gist.github.com/3600016 – daGrevis
추적 표시를 붙여 넣을 때 먼저 "잘라 내기 및 붙여 넣기 모드로 전환"을 클릭하면 내용을 훨씬 쉽게 읽을 수 있습니다. –