小编Ume*_*mer的帖子

如何使用django检查表中是否已存在数据

我是 django 框架的新手,正在努力比较数据库中的值。这是我在 models.py 中的表:

class Post(models.Model):
   user = models.ForeignKey(User, on_delete=models.CASCADE,)
   title = models.CharField(max_length=200)
   content = models.TextField()
   creationDate = models.DateTimeField(auto_now_add=True)
   lastEditDate = models.DateTimeField(auto_now=True)

   def __str__(self):
       return self.title

class Votes(models.Model):
   user = models.ForeignKey(User, on_delete=models.CASCADE,)
   post_id = models.ForeignKey(Post, on_delete=models.CASCADE,)
   up_vote = models.PositiveIntegerField(default=0, validators=[MinValueValidator(0), MaxValueValidator(1)])
   down_vote = models.PositiveIntegerField(default=0, validators=[MinValueValidator(0), MaxValueValidator(1)])

   class Meta:
       unique_together = (("user","post_id"),) 
Run Code Online (Sandbox Code Playgroud)

我的投票表中有这样的数据: 在此输入图像描述

现在我想要的是检查上表中投票选项卡的行中是否已存在“user_id”和“post_id”,如果存在则抛出一条消息,如果不为赞成或反对投票添加值,我想每个人都明白我想要什么,如果不存在的话请告诉我。

我尝试过的是这段代码:

def chk_table():
    user_id = request.user
    post_id = id
    votes_table = Votes.objects.filter(user_id=user_id, post_id= post_id).exists()
    return votes_table
Run Code Online (Sandbox Code Playgroud)

但此功能不仅检查孔表中的一行......

database django

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

database ×1

django ×1