2014-12-10 2 views
1

그래서 장고에 블로그를 쓰려고하는데 의견에 문제가 있습니다. 각 게시물 아래에는 주석 작성자 이름, 이미지 및 설명이 포함 된 사용자 의견이 있습니다.django에서 모든 사용자 이미지를 얻으려면 어떻게해야합니까?

댓글 클래스 :

class Comments(models.Model): 
    body = models.TextField() 
    author = models.ForeignKey(User, related_name= 'upser') 
    image = models.OneToOneField(UserProfile , related_name='im') 
    timestamp = models.DateTimeField(auto_now=True) 
    post = models.ForeignKey(Post, related_name='comments') 

    class Meta: 
     ordering = ('-timestamp',) 

class UserProfile(models.Model): 
    user = models.OneToOneField(User, related_name='oser') 
    picture = models.ImageField(upload_to='profile_images', blank=True) 

    def __unicode__(self): 
     return self.user 

그래서, 내가 사용자의 이미지를 가지고있는 USERPROFILE 클래스와 연결 의견 클래스가 있습니다.

내가 템플릿에 가지고있는 모든 주석 표시하는 것

: 나는 댓글이 객체가있는 경우

{% for comment in comments %} 
      <li> 

      <div class="media" style="margin-top: 10px"> 
        <a class="pull-left" href="#"> 
         <img class="media-object" src={{ MEDIA_ROOT }}/{{ PLACE FOR USER'S PICTURE }} alt="" width="80px" height="80px" > 
        </a> 

        <div class="media-body"> 
         <h4 class="media-heading">{{ comment.author}} 
          <small>{{ comment.timestamp }}</small> 
         </h4> 
          {{ comment.body }} 
        </div> 
       </div> 


      </li> 
     {% endfor %} 

그리고 질문은, 어떻게 템플릿에서 사용자 이미지에 액세스 할 수 있습니까?

답변

0

UserProfile 모델의 외래 키인 image 특성이 왜 필요한지 알 수 없습니다.

당신은 템플릿에 그렇게 만 할 수

은, 주석을 가져 저자를 얻을 당시 UserProfile 및 해당 자사의 "oser"속성으로 이동 : {{comment.author.oser.picture.url}}

이 다음을 수행 그림 속성의 이미지 URL을 가져옵니다.

희망이 있습니다.

+0

고맙습니다! 완벽하게 작동합니다! –

0

귀하의 모델은 나에게 다소 이상한 보이는, 또는 너무 많은 당신의 묘사에 맞지 않는 : 그것은 하나의 주석을 포함대로 그것이 될 "코멘트"안 (에 "코멘트"클래스가

을 ?)에는 본문, 작성자, 타임 스탬프, 게시물이 포함되어 있습니다 ... 괜찮습니다. 하지만 "image"라는 필드는 사실 user_profile입니다. 맞습니까? 또한 OneToOneField는 Comment (s) 객체와 UserProfile ... 1 대 1의 관계를 암시합니다.

사실 당신은 이미 작가를 가졌으므로 그림을 그리기에 충분합니다. 그래서 작가는 사용자 -> user_profile -> 그림입니다. 또는 모델 & 질문이 잘못 이해합니까?

관련 문제