我有一个科目复习系统。用户可以评论一个主题,用户可以喜欢该评论。
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
存在(例如 UserA)likes
?现在我这样做:
if user_review_obj.likes.filter(user=UserA).count() > 0:
// exist...
但我希望有另一种更好的方法。
您可以使用exists
,但正确的用法是
if user_review_obj.likes.filter(user=UserA).exists():
# . . .
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句