gpt4 book ai didi

Django 喜欢按钮

转载 作者:行者123 更新时间:2023-12-04 04:47:11 26 4
gpt4 key购买 nike

我一直在尝试为我的应用程序的每个板上的宠物图片创建一个赞按钮,但我不知道如何创建一个,因为它包含 Integer 。通常我对我创建的功能有一个想法和理解。

当用户点击like按钮时。点赞按钮会加1,并显示在图片附近。

这是我的图片模块。

class Picture(models.Model):
user = models.ForeignKey(User)
board = models.ForeignKey(Board ,related_name='lo')
image = models.FileField(upload_to="images/",blank=True,null=True)
description = models.TextField()
is_primary = models.BooleanField(default=False)

def __unicode__(self):
return self.description

有人可以帮我创建点赞按钮的基础知识吗?所以我可以理解函数的逻辑。

最佳答案

我假设很多用户可以喜欢很多图片。
你需要另一个模型:

class Like(models.Model):
user = models.ForeignKey(User)
picture = models.ForeignKey(Picture)
created = models.DateTimeField(auto_now_add=True)
并像这样调用喜欢的数量:
p = Picture.objects.get(...)
number_of_likes = p.like_set.all().count()
要增加喜欢的数量,您可能希望在 View 中执行类似的操作:
def like(request, picture_id):
new_like, created = Like.objects.get_or_create(user=request.user, picture_id=picture_id)
if not created:
# the user already liked this picture before
else:
# oll korrekt
所以每当有人点击同一个赞按钮两次时,他只会算作一个。
要确定当前用户是否已经喜欢显示的图像:
def picture_detail(request, id):
pic = get_object_or_404(Picture, pk=id)
user_likes_this = pic.like_set.filter(user=request.user) and True or False
希望这可以帮助。

关于Django 喜欢按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15407985/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com