Internal server error on invite page if InviteSignup-associated user was deleted
User is created via invite link, then deleted. Afterwards, accessing invite.index
with admin permissions persistently returns an internal server error.
Stack trace:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/flask/app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3/dist-packages/flask/app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/flask/_compat.py", line 35, in reraise
raise value
File "/usr/lib/python3/dist-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3/dist-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "./uffd/session/views.py", line 135, in decorator
return func(*args, **kwargs)
File "./uffd/invite/views.py", line 51, in index
return render_template('invite/list.html', invites=invites)
File "/usr/lib/python3/dist-packages/flask/templating.py", line 135, in render_template
context, ctx.app)
File "/usr/lib/python3/dist-packages/flask/templating.py", line 117, in _render
rv = template.render(context)
File "/usr/lib/python3/dist-packages/jinja2/asyncsupport.py", line 76, in render
return original_render(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1008, in render
return self.environment.handle_exception(exc_info, True)
File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 780, in handle_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3/dist-packages/jinja2/_compat.py", line 37, in reraise
raise value.with_traceback(tb)
File "/var/www/uffd/uffd/invite/templates/invite/list.html", line 1, in top-level template code
{% extends 'base.html' %}
File "/var/www/uffd/uffd/templates/base.html", line 110, in top-level template code
{% block main %}
File "/var/www/uffd/uffd/templates/base.html", line 120, in block "main"
{% block body %}
File "/var/www/uffd/uffd/invite/templates/invite/list.html", line 108, in block "body"
<li>{{_('Registration of user <a href="%(user_url)s">%(user_name)s</a>', user_url=url_for('user.show', uid=signup.user.uid)|e, user_name=signup.user.loginname|e)|safe}}</li>
File "/usr/lib/python3/dist-packages/flask/helpers.py", line 345, in url_for
force_external=external)
File "/usr/lib/python3/dist-packages/werkzeug/routing.py", line 1774, in build
rv = self._partial_build(endpoint, values, method, append_unknown)
File "/usr/lib/python3/dist-packages/werkzeug/routing.py", line 1689, in _partial_build
append_unknown)
File "/usr/lib/python3/dist-packages/werkzeug/routing.py", line 1697, in _partial_build
rv = rule.build(values, append_unknown)
File "/usr/lib/python3/dist-packages/werkzeug/routing.py", line 809, in build
add(self._converters[data].to_url(values[data]))
File "/usr/lib/python3/dist-packages/werkzeug/routing.py", line 1034, in to_url
value = self.num_convert(value)
jinja2.exceptions.UndefinedError: 'None' has no attribute 'uid'