django restframework를 이용해서 API를 만들어보고 있는데, def nu

 
DongHyeok Lee

django restframework를 이용해서
API를 만들어보고 있는데,

def numbers(request, pk):

try:
numbers = Counts.objects.get(pk=pk)
except Counts.DoesNotExist:
return 블라블라~

if request.method == “GET”:
블라블라~

이런식으로 해뒀는데,Counts라는 model이 있습니다.
그런데 오류가

‘NoneType’ object has no attribute ‘DoesNotExist’
라고 오류가 뜨네요 ㅠㅠ 저기 except부분에서 DoesNotExist라는거를 사용하지 못하는건가요???

  • 남홍김

    사용할 수 있습니다. gist.github.com 으로 전반적인 소스 코드와 traceback을 같이 올려주면 더 도움을 드릴 수 있을거 같아요.

    최준석

    “모델이 존재하지 않아” 말고 “객체 속성이 존재하지 않아” 이네요. DoesNotExist도 하나가 아닐꺼에요 ㅠㅠ 김남홍님 말씀대로 코드가 더 있어야… 명확히 알것같습니다.

    권재원

    혹시 모델 부분에 __unicode__ 메소드 제대로 작동하는지 확인해보시구 에러 메세지 전체 확인이 필요할듯해요

    DongHyeok Lee

    제가 밥먹으로 나갔다가, 이제 사무실 들어가는데 ㅠ 비가와소 ㅠㅠ 빨리가서 코드 올리겠습니다 ㅠㅠ

    DongHyeok Lee

    DongHyeok Lee

    일단 전체 view,model,serializer.py를 올려두었습니당 한 번 확인해주실 수 있으신가요? ㅠㅠ

    권재원

    model에서 unicode 선언 해보세요

    DongHyeok Lee

    이라고 뜨네용

    최준석

    음… Count라는 모델이 아닌가요… ?

    권재원

    def __unicode__(self):
    return unicode(self.numbers)

    Chinseok Lee

    본 이슈는 unicode 와는 관련이 없습니다. 🙂

    위 gist 에 쓰신 코드가 전체 코드는 아닌 듯 하구요. 이 외에 Count = None 코드가 더 있을 듯 합니다.

    그리고, 클래스에 __unicode__ 멤버함수를 정의하실 때, 파이썬 2와 3가 서로 호환되도록, python_2_unicode_compatible 장식자를 쓰시고 __str__ 멤버함수로 등록해주세요. 🙂

    https://docs.djangoproject.com/en/1.9/topics/python3/#str-and-unicode-methods

Advertisements