💡 AI 인사이트

🤖 AI가 여기에 결과를 출력합니다...

댓글 커뮤니티

쿠팡이벤트

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

검색

    [코담] 웹개발·실전 프로젝트·AI까지, 파이썬·장고의 모든것을 담아낸 강의와 개발 노트

    2 01 Page not found (404) | ✅저자: 이유정(박사)

    🔹 Page not found (404)이란? 사용자가 웹 주소(URL)를 입력했는데, 그 주소에 해당하는 페이지나 기능을 장고가 찾지 못할 때 생기는 오류입니다. 즉, 장고 프로젝트 안에 그 URL을 처리할 경로(path)가 없어서 생기는 문제입니다. 예를 들어, /about/이라는 주소로 들어왔지만 장고에 /about/을 처리하는 코드가 없다면 이 오류가 발생합니다.

    Page not found (404)
    Request Method: GET
    Request URL: http://127.0.0.1:8000/polls/
    

    이런 메시지가 나올 경우:

    • 사용자가 http://127.0.0.1:8000/polls/ 주소로 접근했지만,
    • Django가 이 주소를 처리할 방법을 urls.py 안에서 찾지 못한 것입니다.

    🔹 이 오류가 발생하는 주요 원인과 해결 방법:

    mysite/urls.py에서 앱 연결이 빠짐:

    # 잘못된 예 (polls 앱 연결이 없음)
    urlpatterns = [
        path('admin/', admin.site.urls),
    ]
    

    ✅ 해결 방법:

    # polls 앱의 URL을 include()로 연결
    from django.urls import path, include
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('polls/', include('polls.urls')),  # 추가
    ]
    

    polls/urls.py 파일이 존재하지 않음 앱을 만들면 urls.py 파일이 자동으로 생성되지 않으므로, 직접 만들어야 합니다.

    ✅ 해결 방법: polls/urls.py 파일을 새로 만들고 다음처럼 작성합니다.

    # polls/urls.py
    from django.urls import path
    from . import views
    
    urlpatterns = [
        path('', views.index, name='index'),
    ]
    

    views.py에 index 함수가 없음

    ✅ 해결 방법:

    # polls/views.py
    from django.http import HttpResponse
    
    def index(request):
        return HttpResponse("안녕하세요, 여기는 투표 앱입니다.")
    
    TOP
    preload preload