** Кварги всегда не дают ни одного в Джанго - PullRequest
0 голосов
/ 02 июня 2018

Где-то в моих взглядах я перенаправляю как:

return redirect('camera_login', success='False' )

В моем urls.py:

    url(r'^', CameraLoginView.as_view(), 
        name = "camera_login"),
    url(r'^(?P<success>[a-zA-Z0-9-]+)/$', CameraLoginView.as_view(), 
        name = "camera_login"),

Теперь я вижу, что URL перенаправляется на localhost:8000/False вМой браузер, и страница camera_login.html отображается, но когда я отлаживаю код, мой **kwargs всегда отсутствует.

class CameraLoginView(View):

def get(self, request, *args, **kwargs):
    print('kwargs' , self.kwargs)
    success = None
    print('args ', args)
    return render( request,
        'camera_login.html', {'success': success})

в терминале kwargs {}, kwargs всегда пуст?Я не знаю, где я иду не так.Спасибо.

1 Ответ

0 голосов
/ 02 июня 2018

Ваш первый шаблон соответствует всему, поэтому ваш второй шаблон никогда не будет достигнут.Так как первый шаблон не имеет группы захвата, никакие kwargs никогда не захватываются.

Вы должны всегда проверять свои шаблоны:

url(r'^$', CameraLoginView.as_view(), name = "camera_login"),
url(r'^(?P<success>[a-zA-Z0-9-]+)/$', ...)
...