2013-04-15 1 views
0

에 추가에서 카테고리를 얻기 내가 바로이보기가 있습니다장고 :보기

def thisviewright(request,pk): 
    theadd = adds.objects.filter(id=pk) 
    theaddlist = adds.objects.filter(category=add.category) 
    return render_to_response.. 

을 그리고 난 그래서 난 다른 모든이 같은 범주가 그 추가 표시 범주를 얻기 위해 노력하고있어. URL에서 카테고리를 전달하지 않으므로 전달중인 ID 인 추가에서 가져와야합니다.

하지만 난 오류가 받고 있어요 : 의 검색어는 어떤 속성 카테고리를가 없습니다

다음과 같이 모델은 다음과 같습니다

class adds(models.Model): 
title = models.CharField(max_length=255) 
category = models.ForeignKey('categories') 
... 

class categories(models.Model): 
title = models.CharField(max_length=255) 

너무 오래 질문 짧은, 내가 관련이 같은에서 추가 얻는 방법 내가 지나가고있는 객체의 카테고리를 사용하여 카테고리?

답변

1

보기의 첫 번째 줄에는 개체가 아닌 쿼리 집합이 반환됩니다. 이 쿼리 세트에는 하나의 객체 만 포함되지만 필터를 사용하여 구성된 다른 객체에는 여러 멤버가 있습니다.

은, 그 라인과의 검색어 반대로 객체를 반환하려면 다음 줄 중 하나를 사용하십시오 : 그것은 바와 같이

theadd = adds.objects.get(id=pk) 
theadd = adds.objects.filter(id=pk)[0] 

당신은 오직 (즉, ID)의 고유 인덱스 속성의 첫 번째를 사용해야합니다 기준과 일치하는 객체가 둘 이상 있으면 오류가 발생하여 실패합니다.