Django计入模型

时间:2017-07-21 13:58:04

标签: python django

我有一个简单的模型来注册,如果有任何用户喜欢我博客中的文章。

class Like(models.Model):
    articles = models.ForeignKey(Articles, verbose_name="Article", null=True, blank=True)
    user = models.ForeignKey(User, verbose_name="Auteur", null=False)

我只记录用户ID和文章ID。 这是文章的模型:

class Articles(models.Model):
    title = models.CharField(max_length=50, null=False, verbose_name="Titre")
    text = HTMLField()
    image = models.FileField(upload_to='media/articles/', validators=[validate_file_extension], blank=True, null=True, verbose_name="Image de présentation")
    games = models.ForeignKey(Games, verbose_name="Jeux", blank=True, null=True)
    author = models.ForeignKey(User, verbose_name="Auteur")
    is_statut = models.BooleanField(default=True, verbose_name="Statut")
    date = models.DateTimeField(auto_now_add=True, auto_now=False, verbose_name="Date de création")
    update = models.DateTimeField(auto_now=True, verbose_name="Dernière modification")

我想知道如何计算每篇文章中有多少“喜欢”?

如果可能的话,我想像这样list[]返回list[(id_article, number_of_like), ]吗?

由于

2 个答案:

答案 0 :(得分:0)

我猜这可能有用

list = [Article.objects.get(id=Article_ID),Like.objects.filter(articles=Article_ID).count()]

答案 1 :(得分:0)

问题的第一部分:

获得一篇文章有​​多少喜欢的例子:

 the_article = Articles.objects.all().first()
 how_many_likes = the_article.like_set.count()

&#34的第二部分;如果可能,我想返回列表[],如此列表[(id_article,number_of_like),]?":

 list = []
 all_articles = Articles.objects.all()
 for one_article in all_articles:
     how_many_likes = one_article.like_set.count()
     list.append([one_article.id, how_many_likes])

希望能帮到你!