python - 我如何从项目的外键中获取标题

标签 python django

当我将产品添加到愿望 list 时,我试图从商品模型中获取标题。

class Item(models.Model):
title = models.CharField(max_length=250)

def __str__(self):
    return self.title

class Wishlist(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE)
item = models.ForeignKey(Item, on_delete=models.CASCADE)
added_date = models.DateTimeField(auto_now_add=True)

class Meta:
    db_table = 'Wishlist'
    verbose_name_plural = 'Wishlists'

def __str__(self):
    return self.item.title

@login_required
def wishlist(request):
wishlist = Wishlist.objects.all()

context = {
    'wishlist': wishlist,
}
return render(request,'wishlist.html', context)

我在模板上尝试过此操作,但不起作用。

{% for object in wishlist.item.all %}
 <h1>{{ object.item.title }}</h1>
{% endfor %}

最佳答案

由于 wishlistWishlists 的集合,因此您应该像这样迭代:

{% for object in <b>wishlist</b> %}
 <h1>{{ object.item.title }}</h1>
{% endfor %}

话虽如此,在 ItemWishlist 之间定义多对多关系可能更有意义。

关于python - 我如何从项目的外键中获取标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59423070/

相关文章:

python - 如何在 Python 的基类中创建派生类的对象?

python - 在 Django 模板中访问我的用户定义的 python 全局常量

python - Seaborn 在同一个散点图上绘制两个数据集

python - Seaborn - 极坐标图 - 如何更改 FacetGrid 中的度数

python - 自定义 Django 用户模型 - 用户名作为主键属性

python - Django 计算字段不会出现在迁移中

python - 使用模型(管理)继承时命名空间 ModelAdmin.get_urls 的 Django 方式是什么?

python - 在 CherryPy 中检查每个页面加载时的登录状态

python - 如何只取整数项并计算列表中的总和?

python - 从 django timesince 中删除尾随数据 -- 模板等效项