путь: преобразователь пути Django 2.2 - PullRequest
1 голос
/ 24 июня 2019

Я должен что-то упустить, как работать с путем (не функция, преобразователь пути).Я не понимаю, почему значение None в следующем:

У меня есть URL:

urlpatterns = [
    ...
    re_path(r'(<path:current_path>)?', views.index, name='index'),
    ...
]

Представление:

def index(request, current_path):
    logger.error(f'current_path : {current_path}')
    path = request.path
    ...

Все функции, кроме этой current_pathзначение остается None, каким бы ни был данный путь, в то время как request.path содержит правильное значение.

Почему?

Редактировать: Я ожидал current_path = 'home / user'когда я передаю следующий URL: http://127.0.0.1:8080/file_system//home/user/

1 Ответ

2 голосов
/ 24 июня 2019

Вы используете re_path в своем шаблоне.Это использует регулярные выражения, а не преобразователи пути.Вместо этого вы должны использовать path и удалить части регулярных выражений.

path('<path:current_path>', views.index, name='index'),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...