[파이썬][Django] URL 리디렉션과 매개변수 처리 방법과 예제

Django에서 URL 리디렉션과 매개변수 처리 방법을 설명하고 예제를 제공하겠습니다. URL 리디렉션은 특정 URL을 다른 URL로 리디렉션하는 기능을 말하며, 매개변수는 URL에 포함된 값을 뷰 함수로 전달하는 데 사용됩니다.

URL 리디렉션

URL 리디렉션은 redirect() 함수를 사용하여 구현합니다. 이 함수는 리디렉션할 URL을 받아 새로운 URL로 사용자를 리디렉션합니다. 여기에 간단한 예제가 있습니다:

  1. URL 리디렉션 설정:
from django.urls import path
    from django.shortcuts import redirect
    
    def redirect_example(request):
        # 다른 URL로 리디렉션
        return redirect('new_url')
    
    urlpatterns = [
        path('old-url/', redirect_example),
        path('new-url/', some_view),
    ]
위의 예제에서 `/old-url/`로 들어오는 요청은 `redirect_example` 뷰 함수를 통해 `/new-url/`로 리디렉션됩니다.

URL 매개변수 처리

URL에 포함된 매개변수를 처리하려면 URL 패턴을 정의하고 해당 매개변수를 뷰 함수로 전달해야 합니다. Django에서는 정규 표현식을 사용하여 매개변수를 추출합니다.

  1. URL 패턴 정의 및 매개변수 처리:
from django.urls import path
    
    def my_view(request, parameter):
        # parameter를 사용하여 뷰 로직 수행
        return HttpResponse(f"Parameter value: {parameter}")
    
    urlpatterns = [
        path('example/<str:parameter>/', my_view),
    ]
위의 예제에서 `<str:parameter>`는 URL에 포함된 매개변수를 추출하고, `my_view` 함수에 전달합니다. 이를 통해 요청된 URL의 `/example/` 뒤에 오는 값이 `parameter` 변수로 전달됩니다.
  1. 매개변수 사용:

    뷰 함수에서 매개변수를 사용하여 원하는 작업을 수행합니다.

from django.http import HttpResponse
    
    def my_view(request, parameter):
        # parameter를 사용하여 뷰 로직 수행
        return HttpResponse(f"Parameter value: {parameter}")
위의 예제에서 `parameter` 변수는 URL에서 추출된 값입니다.

URL 리디렉션과 매개변수 처리는 Django에서 뷰 함수와 함께 사용되어 웹 애플리케이션의 동작을 제어하는 데 중요한 역할을 합니다. 필요에 따라 뷰 함수 내에서 매개변수를 사용하여 원하는 동작을 구현할 수 있으며, URL 리디렉션을 통해 사용자를 다른 페이지로 안내할 수 있습니다.