2012-04-20 3 views
0

내가 내 템플릿이를 연결하는 방법 :장고 : 장고 템플릿을 사용하는 경우 페이지를 놓고

<div id="comment-{{ post_comment.id }}"> 
<a title="Comment was useful" href="/useful-comment/{{ blog_post.id }}/{{ post_comment.id }}/"> 

이 링크, 메소드 useful_comment (blog_post_id, post_comment_id)에 사용자가 클릭이 호출되고에서 반환하면 동일한 템플릿을 다시로드합니다. 그때 #comment 아래로 페이지를 스크롤 할 - {{post_comment.id}}하지만 난 내가 그렇게처럼 내 템플릿을로드하는 경우 그렇게 어떻게 :

arguments = dict(user = request.user, blog_post = blog_post) 

t = loader.get_template('blog-post-template.html') 
c = RequestContext(request, args) 
return HttpResponse(t.render(c)) 

을이가 있지만에서, Django: How do I position a page when using Django templates 관련이있다 질문은 양식을 사용하고 페이지의 정적 섹션으로 스크롤 만합니다.

+1

[{% url ... %}] (https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#url)을 사용하고있는 이유는 무엇입니까? 주형? –

+0

제안 해 주셔서 감사합니다 :) 나는 장고를 사용하기 시작했습니다. – Felipe

+0

문제가 없습니다! [튜토리얼] (https://docs.djangoproject.com/en/dev/intro/tutorial01/)을 살펴 보는 것을 잊지 마십시오. –

답변

0

#anchor을 링크의 href에 추가해야합니다. 귀하의 모든 의견에 대해 서로 다른 앵커 (예 : <a name="comment_123"></a>)가있을 것이므로 링크 지점이 올바른 앵커인지 확인하십시오.

이것은 장고 (Django)와는 아무런 관련이 없습니다.

+0

HttpResponse 객체가 반환되면 앵커가 손실되므로 질문이 표시됩니다. 'HttpResponseRedirect ('/ blog-post/% s # comment- % s'% (blog_post.id, post_comment.id)) 응답을하고 있다고 가정하면 답이 정확할 것입니다. – Felipe

+0

나는 당신의 아이디어를 얻었습니다. 당신의 '유용한 코멘트'는 뭔가를하고 있습니다. 그런 다음 아무 것도 표시하지 말고 리디렉션을 반환하면 정확히 말한대로 할 수 있습니다. 항상 데이터를 표시하는 뷰와 데이터를 업데이트하는 뷰를 분리해야합니다. 또한 좋은 방법은 POST 요청을 업데이트하는 것입니다 (사용자의 경우 하이퍼 링크 대신 버튼이있는 POSTable 양식이 될 것입니다). 그렇지 않으면 XSS 공격에 취약합니다. – ilvar

+0

나는 당신에 동의합니다. 어제 튜토리얼을 더 읽으면서 나는이 일을하지 말아야한다는 것을 깨달았습니다. 제안 해줘서 고마워. – Felipe