내 전자 상거래 카탈로그에 대한 내 show_category
보기가 어제 전 기능이었습니다. 예를 들어 domain.com/category/necklaces로 이동하면 show_category
보기로 전화를 걸고 목걸이 범주에있는 모든 제품을 표시합니다. 이는 두 개의 테이블, 제품 및 범주 및 관련 "통과"테이블을 사용하여 수행됩니다.Python AttributeError - 'Category'객체에 'product_set'속성이 없습니다.
나는 단지 syncdb
을 사용하고 있었지만 새 ManyToManyField를 추가해야했기 때문에 Django South가 관여했다. 설치하고, 데이터베이스를 다시 만들고, 장고를 사용하여 마이그레이션을 관리하고, 모든 것을 설정하고 추가했다. 카테고리 및 제품은 장고 관리자에게 돌아갔습니다. SQL Workbench에서 데이터베이스 자체를 검사했는데, 그 모든 것이 웅장 해 보입니다. 지난 밤에했던 작업을 완벽하게 재현했지만 지금은 Django South를 사용하고 있습니다.
그런 다음 domain.com/category/necklaces로 이동하여 내 카테고리의 테스트 목걸이 제품이 나열된 카테고리 페이지를 볼 것으로 예상됩니다. 오류 내 catalog.views.py에, 여기에서 발생하는
AttributeError at /category/necklaces/
'Category' object has no attribute 'product_set'
:
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()
을하지만 일이이 어젯밤 이후로 전혀 변경하지 않은 대신에 나는이 있어요. 나는 데이터베이스를 확인하고 제품이 존재하고 "예"테이블이이 카테고리에 해당 제품을 올바르게 연결하고 있습니다.
내가 볼 수있는 아이디어가 있습니까? 나는 기본적으로 그때 작동 코드를 건드리지 않았기 때문에 오류가 데이터베이스의 어딘가에 있다고 가정하지만 데이터베이스는 너무 깨끗해 보이지 않으므로 말하기 어렵습니다. 모든 도움을 주시면 감사하겠습니다. 나는 그동안 내 자신을 찌를거야.
의 사용에 우선 순위
에게 어떤 문서를 소요,'_set'은 작동하지 않을 것입니다. 모델을 공유 할 수 있습니까? – karthikr
공유 하겠지만 문제는 해결했습니다. 물론, related_name은 모델에 몰래 들어가 있습니다. 나는 어젯밤 이래로 만지지 않은 다른 개발자와 이야기해야 할 것입니다 ... 나는 생각하지 않습니다 ... "감사합니다 karthikr. 답변을 추가하여 받아 들일 수 있도록 하시겠습니까? 아니면 문제를 해결하는 의견을 어떻게 다루는 것이 아닙니다. – fildred13