Django перенаправления для неполных URL - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть приложение Django с содержимым по URL: / analyse / plot / 123ab c (или другим ключом alphanumeri c).

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

Вот как выглядит моя конфигурация URL:

urlpatterns = [
    path('', views.index, name='index'),
    path('plot/', views.plot_redirect, name='plot_redirect'),
    path('plot/<graph_id>/', views.plot, name='plot'),
]

Просмотры:

def plot_redirect(request):
    return redirect('analyze:plot:a1')

def plot(request, graph_id):
    """

    :param request: HTML request object
    :return: The html page
    """

    graph = get_object_or_404(pk=graph_id)

Когда я в настоящее время go для / анализа / построения получаю ошибку.

1 Ответ

0 голосов
/ 13 февраля 2020

Как упомянул Иван в комментарии выше, мне пришлось изменить представление plot_redirect, чтобы правильно передать аргумент.

def plot_redirect(request):
    return redirect('analyze:plot', graph_id='a1')
...