2017-04-06 6 views
0

이 질문을하는 방법을 정확히 모르겠습니다. 이해가되지 않는 경우 사전에 사과드립니다.django에서 임베디드 코드로 일대 다 관계의 다른 테이블에서 기본 키를 얻는 방법

저는 pythonanywhere를 사용하여 기본 블로깅 유형 웹 사이트를 만들고 각 사용자에게 프로필 페이지를 제공하려고합니다. 모든 게시물의 목록을 표시하는 페이지에서 내가 각 게시물의 작성자 내 모든 URL을,보기 및 템플릿 좋은 것을 가정 할

{% for post in posts %}: 
    <p>author: {{ post.author }}</p> 

에과 같이 표시가 어떻게 그 링크를 추가하려면 /accounts/[user's id]으로 연결되는 텍스트?

<p>author: <a href="{% url 'account_detail' pk=User.pk %}">{{ post.author }}</a></p> 

하지만 실제로 post.author에서 User.pk을 얻을하는 방법을 알고하지 않습니다

포스트 모델의 저자 필드가

author = models.ForeignKey('auth.User') 

으로 정의는 기본적으로 내가 원하는.

+2

당신이'시도해 봤어을 PK = 전자의 방법은 같은 view.py에서이 작업을 수행 항상 더 낫다 post.author.pk'? –

+0

@IvanMiljkovic 나는 내가 가지고있다라고 생각했다. 그러나 명백하게. 나는 어리 석다라고 느낀다! 그래도 감사합니다 :) –

답변

0

이 모델이 있다고 가정 :

저자 = models.ForeignKey 것은

('여기 모델 충분하다)와 외래 키가에 대한 POST

라는 이름의 모델에 테이블의 ID에 액세스하면 다음과 같이 쓸 수 있습니다.

post.author__pk 

By

value = post.objects.values('name', 'author__pk').filter(filter if necessary) 
0

@Ivan Miljkovic 설명 방법이 코드 줄 대체하기에 충분 :

<p>author: <a href="{% url 'account_detail' pk = post.author.pk %}">{{ post.author }}</a></p>