2017-05-19 2 views
0

私は科目のレビューシステムを持っています。ユーザーはレビューとすることができ、ユーザーはのようにとすることができます。 user(例えばユーザーA)はユーザーレビューのlikesに存在する場合オブジェクトが別のモデルの外部キーフィールドに存在するかどうかを確認します

class UserReview(models.Model): 
    subject = models.ForeignKey(Subject, blank=True, null=True) 
    user = models.ForeignKey(User) 
    review = models.TextField(null=True, blank=True) 
    likes = GenericRelation('Like') 

class Like(models.Model): 
    user = models.ForeignKey(User) 
    content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE) 
    object_id = models.PositiveIntegerField() 
    content_object = GenericForeignKey('content_type', 'object_id') 

    class Meta: 
     unique_together = (('content_type', 'object_id', 'user'),) 

はどうやってチェックしますか?今のところ、私はこのようにしています:

if user_review_obj.likes.filter(user=UserA).count() > 0: 
    // exist... 

しかし私はもっと良い方法があると思っています。

答えて

2

あなたはexistsを使用することができ、しかし、正しい使用方法は

if user_review_obj.likes.filter(user=UserA).exists(): 
    # . . . 
です
関連する問題