2017-02-16 1 views
1

특정 Video 개체를 가져온 다음 문서에 설명 된대로 ForeignKey 역방향 조회를 사용하여 연결된 모든 개체를 찾으려고합니다. 내가 오류 'Video' object has no attribute 'rating_set'django 역방향 조회 외부 키가 작동하지 않음

을 받기를 실행하려고하지만 장고 문서를 읽을 때 그것은 나를 이야기 할 때

def video_ratings(request): 
    vid_rate = Video.objects.get(pk=1) 
    ratings_of_video = vid_rate.rating_set.all() 
    context = { 
     'vid_rate': vid_rate, 'ratings_video': ratings_of_video 
    } 
    return HttpResponse(template.render(context, request)) 

:

class Video(models.Model): 
... 
    rating_int = models.IntegerField(default=1, choices=CHOICES, name='rating_int') 
    def __str__(self): 
     return self.title 


class Rating(models.Model): 
    video = models.ForeignKey('Video', related_name='video', null=True) 

및 전망 :

나는 모델을 가지고 역방향 조회를 수행 할 때이 _set.all() 명령을 사용해야합니다. 나는 무엇이 여기에 실종되었는지에 관해 모른다.

답변

0

foreign key loopkup에 related_name을 지정했습니다. 그래서 rating_set이 작동하지 않아야합니다.

당신은 더 나은 명명 규칙이 related_name

class Rating(models.Model): 
    video = models.ForeignKey('Video', related_name='ratings', null=True) 

ratings를 사용하고이 문제였다 아 다음

ratings_of_video = vid_rate.ratings.all() 
+0

처럼 조회 할 수있을 것입니다

ratings_of_video = vid_rate.video.all() 

처럼 조회 할 수 있습니다! 워드 프로세서에서 팁을 주셔서 감사합니다. – ratrace123