gpt4 book ai didi

Python AttributeError - 'Category' 对象没有属性 'product_set'

转载 作者:行者123 更新时间:2023-11-30 23:37:18 24 4
gpt4 key购买 nike

我的电子商务目录的 show_category View 昨天功能齐全。例如,导航到 domain.com/category/necklaces 将调用 show_category View 并显示项链类别中的所有产品。这是通过两个表(产品和类别)及其关联的“直通”表来完成的。

我一直只使用 syncdb,但我必须添加一个新的 ManyToManyField,因此 Django South 参与其中,我安装了它,重新创建了数据库,使用 django South 来管理我的迁移,得到了一切都已设置完毕,并将我的类别和产品添加回 django 管理中心,一切都很顺利。我在 SQL Workbench 中检查了数据库本身,它看起来很宏伟 - 完美地重现了我昨晚的情况,但现在使用 Django South。

但后来我导航到了domain.com/category/necklaces,我希望看到我的类别页面列出了我的一个测试项链产品。相反,我得到了这个:

AttributeError at /category/necklaces/
'Category' object has no attribute 'product_set'

错误发生在我的catalog.views.py中:

def show_category(request, 
category_slug,
template_name="catalog/category.html"):
c = get_object_or_404(Category,
slug=category_slug)
products = c.product_set.all()

但问题是,自昨晚以来这一切都没有改变。我检查了数据库,是的,产品存在,是的,“通过”表正确地将产品连接到此类别。

有什么想法我应该去哪里看吗?我认为错误是在数据库中的某个地方,因为我基本上没有触及当时正在工作的代码,但数据库看起来很原始,很难说。感谢任何和所有的帮助。与此同时,我会自己研究一下。

最佳答案

添加评论作为答案以供将来引用:

如果您在外键引用中使用了related_name_set将不再起作用,因为django提供_set作为默认的相关name,自定义相关名称优先

有关 lated_name 使用的一些文档 here

关于Python AttributeError - 'Category' 对象没有属性 'product_set',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15710252/

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