2014-05-13 4 views
0

그룹이 있습니다. 사용자는이 그룹의 회원이 될 수 있습니다. 사용자가 그룹 프로필을 볼 때, 그가 회원 인 경우 자신에 대한 정보를보아야합니다. 그것이 어떻게 작동 :어떻게 장고보기에서 컨텍스트를 얻을 속성?

Exception Type: DoesNotExist 
Exception Value: Member matching query does not exist. 

이 get_or_create없이이 컨텍스트를 얻을 수 possoble입니다 : 그는이 GRUP의 구성원이 아닌 경우,

class UniverseDetailView(LoggedInMixin, DetailView): 
    model = Universe 
    template_name = 'multiuniverse/universe_detail.html' 

    def get_context_data(self, **kwargs): 
     context = super(UniverseDetailView, self).get_context_data(**kwargs) 
     member = Member.objects.get(user=self.request.user, uni=self.object) 
     context['member'] = member 
     return context 

을하지만, 난 오류가 발생했습니다? Django docs on get()에서

답변

0

: 또한

try: 
    context['member'] = Member.objects.get(user=self.request.user, uni=self.object) 
except Member.DoesNotExist: 
    context['member'] = None 

참조 :

get() raises a DoesNotExist exception if an object wasn’t found for the given parameters. This exception is also an attribute of the model class

이 코드의 실행을 중지하는 오류를 방지하려면, 당신은 제외/시도에 포장 할 수 Get an object from the DB, or None if nothing matches

관련 문제