python - 如何在 Django 中按模型过滤模型

标签 python django

我在从一组模型中过滤对象时遇到了一些麻烦。
我有3个类(class):

class Product(models.Model):
   id = models.UUIDField(default=uuid4, primary_key=True, editable=False)
   title_fa = models.CharField(max_length=80)
   title_en = models.CharField(max_length=80)
   ...

class Favorite(models.Model):
   user = models.ForeignKey(Profile, default=None, on_delete=models.CASCADE)
   product = models.ForeignKey('seller.Product', default=None, on_delete=models.CASCADE)
   ...

class Profile(models.Model):
   id = models.UUIDField(default=uuid4, primary_key=True, editable=False)
   first_name = models.CharField(max_length=80, blank=True, null=True)
   last_name = models.CharField(max_length=80, blank=True, null=True)
   shop_name = models.CharField(max_length=80, blank=True, null=True)
   ...
我试图过滤一些这样的东西:
favorite_product = Product.objects.filter(id=favorite__.id)
这是我的 View 功能:
def profile(request):
    id = request.COOKIES['id']
    order__ = Order.objects.filter(sender=id)
    profile__ = Profile.objects.get(id=id)
    favorite__ = Favorite.objects.filter(user=id)
    favorite_product = Product.objects.filter(id=favorite__.id)

    return render(request, 'shop/profile/profile.html',
                  {'order': order__, 'profile': profile__, 'favorite_product': favorite_product})
我想通过 user = id 显示他们 id 在最喜欢的模型中的产品。
模板代码:
{% for item in favorite_product %}
    <div class="profile-recent-fav">
        <a href="#"><img src="{{ item.image.url }}"></a>
        <div class="profile-recent-fav-col">
            <a href="#"></a>
            <div class="profile-recent-fav-price">{{ item.fa_name }}</div>
            <div class="profile-recent-fav-remove">
                <a href="#">
                    <i class="fa fa-trash"></i>
                </a>
            </div>
        </div>
    </div>
{% endfor %}

最佳答案

尝试 :

favorite_product = Product.objects.filter(id=favorite__.Product.id)
评论是否有效。

关于python - 如何在 Django 中按模型过滤模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65371245/

相关文章:

python - 关闭 python 命令子进程

python - 遍历列表和单个元素的列表

python - 如何使用 itertools 组合和排列来找到这个?

python - Django 模型 reload_from_db() 与显式从数据库中调用

python - django 错误 __str__ 返回非字符串(类型 __proxy__)

django - 为什么编辑模型实例后无法保存它们?

python - 为什么 numpy.corrcoef() 返回 nan?

django - 在Django中request.method ==“POST”是什么意思?

javascript - 无法使 Lightbox2 在 Django 中工作

python - Keras - 如何在 fit_generator() 中使用批处理和时期?