我有一个主题评论系统。用户可以审核主题,用户可以赞进行审核。
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'),)
如何检查用户评论的user
中是否存在likes
(例如UserA)?现在我这样做:
if user_review_obj.likes.filter(user=UserA).count() > 0:
// exist...
但我希望还有另一种更好的方法。
答案 0 :(得分:2)
您可以使用exists
,但正确的用法是
if user_review_obj.likes.filter(user=UserA).exists():
# . . .