Я использую bottle для создания крошечного веб-приложения. У меня есть простая форма входа в систему. Я хочу остаться в форме входа, если аутентификация не удалась, в противном случае перейдите на главную страницу. Однако в функции, обрабатывающей POST формы входа, похоже, что она просто игнорирует перенаправление:
@route('/')
@view('login.html')
def promotool():
return {'error': 'none'}
@route('/login', method="POST")
@view('login.html')
def login():
try:
if auth_success:
bottle.redirect('/main_app')
return {'error': 'LoginError'}
except:
return {'error': 'LoginError'}
После этого в журнале сервера я вижу только POST, но не перенаправление:
"POST /login HTTP/1.1" 200 4032
Если я нацеливаю свою форму при входе в систему. html на / main_app в качестве цели POST, то я вернусь к исходной точке, потому что в этом случае мне нужно будет перенаправить на "/", чтобы сделать логин в случае ошибки аутентификации.
Как мне сделать так, чтобы перенаправление работало или иным образом закодировать это?