Django (2.1.4): Как получить переменную пути из всего запроса в промежуточном программном обеспечении? - PullRequest
0 голосов
/ 27 февраля 2019

Я новичок в фреймворке python (3) / Django (2.1.4).Я хочу получить переменную пути, которая присутствует во всех URL в моем промежуточном программном обеспечении.Я попробовал что-то ниже, но это не работает для меня.

URL:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/v1/mywebsite/<uuid:path_variable_name>/', include('website.urls')),
]

Промежуточное программное обеспечение:

class my_middle_ware(MiddlewareMixin):

def __init__(self, get_response):
    self.get_response = get_response

def __call__(self, request):
    print(request.GET.get['path_variable_name'])
    print(request.POST.get['path_variable_name'])
    response = self.get_response(request)
    return response

Я хочу получить path_variable_name в своем промежуточном программном обеспечении.Вместо использования request.GET, request.POST и т. Д., Существует ли какой-либо общий способ перехватить весь запрос request.getPathVariable ('path_variabl_name')?Заранее спасибо.

1 Ответ

0 голосов
/ 27 февраля 2019

Параметры недоступны до URL-адрес разрешен .Однако промежуточное ПО на основе классов также имеет доступный хук process_view, где доступны view_args и view_kwargs - параметр из url будет в одном из них.

...