2009-06-17 4 views
0

아약스 요청 처리기와 같이 contrib 주석 프로그램을 기반으로하는 코드를 개발했습니다. 이 코드는 별도의 응용 프로그램에 있으며 '주석 2'라고 부를 수 있습니다. 프로젝트의 URL 구성은/comments에 대한 모든 호출이이 앱의보기로 연결되는 방식으로 구성됩니다. 이 문제없이 작동합니다.일반 앱 내에서 템플릿 태그 구현하기 - django

최근에 나는 부적절한 것으로 표시된 의견을 보여주는 새로운 페이지를 만들었습니다.

나는 inclusion templatetag를 작성하는 것이 가장 좋았고 그것을 작성했다고 생각했습니다. 다음과 같이 작동합니다.

{% display_flagged_comments 'market' %} 

이 태그는 기본 앱의 관련 템플릿 안에 있습니다.

위의 코드에서 알 수 있듯이 comments2 앱이 일반적인 상태로 유지되도록 댓글이 속한 모델 (이 경우 마켓)을 전달합니다. 나는 따옴표 안에있는 모델 인수 ('시장')이 코드가 다소 덜 우아하게 느낌,

첫째 :

는 내가에 대한 지침이 필요하다는 것을 여기에 세 가지 문제가 있습니다. 코드에서 인수가 모델로 변환됩니다 /의견 모든 요청은 응용 프로그램을 comment2 지시하기 때문에, 내가이 페이지에 대해 다른 URL을 고안 할 필요가

#template tag 
def show_comments(modelname): 
    model = ContentType.objects.get(model=modelname) 
    ... # get comments and return them 

초 (그것은 주 안에 앉아 app) (예 :/managecomments). 나는 또한 그 일을 부끄럽다.

셋째, 올바른 경로를 따라 갔는지 또는 내가 수행하려고 시도하는 것을 구현하는 더 좋은 방법이 있는지 알고 싶습니다.

미리 감사드립니다.

답변

0

ContentTypeManager는 사용자의 첫 번째 문제를 다소 해결했습니다. 클래스 또는 인스턴스를 모두 허용하는 메서드 get_for_model을 사용할 수 있습니다. the contettypes docs에서 자세한 내용을 읽어보십시오.

관련 문제