반응형
장고를 공부하던 중 아래와 같은 에러가 떴다.
NoReverseMatch at /posts/1/
Reverse for 'post-update' with arguments '('',)' not found. 1 pattern(s) tried: ['posts/(?P<post_id>[0-9]+)/eidt/$']
처음엔 이게 뭐지 싶었지만 잘 읽어보니 'post-update' 뒤에 인자를 하나 찾을 수 없다고 하는 에러였다.
즉 원래 url은 'posts/<int:post_id>/edit/' 에 name='post-update' 옵션을 줘서 사용을 하고 있었는데 템플릿에 추가를 하며 사용하는 과정에서
<a href={% url 'post-update' %}>수정하기</a></div>
위처럼 뒤에 id 값을 안 넣어주고 작동을 시켜 뒤에 인자가 없다고 에러가 뜬 것이었다.
<a href={% url 'post-update' post.id %}>수정하기</a></div>
위와 같이 올바른 인자를 뒤에 넣어주니 올바르게 작동했다!
항상 미리 정해놓은 url 형식을 빠르게 넣는다고 넘기지 말고 올바르게 입력해서 다음번엔 오류를 일으키지 않도록 조심해야겠다.
참고: 장고 공식 문서
반응형
'Study > Django' 카테고리의 다른 글
[Django] Django 클래스형 뷰 ( Class-Based Views ) # 1 (0) | 2021.12.14 |
---|---|
[Django] django.core.exceptions.ImproperlyConfigured Error (0) | 2021.12.12 |
Django Model Queryset API / 장고 모델 쿼리셋 API (0) | 2021.12.12 |
Django Validator / 장고 유효성 검증 / Form에서 유효성 검증하기 (0) | 2021.12.10 |
Django Validator / 장고 유효성 검증 / validator 추가하기 (0) | 2021.12.10 |