a5e1e94fb2
Co-authored-by: Cursor <cursoragent@cursor.com>
33 lines
1.0 KiB
HTML
33 lines
1.0 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}登录 · 本地导航{% endblock %}
|
|
{% block body %}
|
|
<div class="login-page">
|
|
<div class="login-card">
|
|
<h1>本地导航站</h1>
|
|
<form method="post" novalidate>
|
|
{{ form.hidden_tag() }}
|
|
{% if request.method == "POST" and form.csrf_token.errors %}
|
|
{% for e in form.csrf_token.errors %}
|
|
<div class="errors" role="alert">{{ e }}</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<div class="form-row">
|
|
{{ form.username.label }}
|
|
{{ form.username(class="") }}
|
|
{% if form.username.errors %}
|
|
<div class="errors">{{ form.username.errors[0] }}</div>
|
|
{% endif %}
|
|
</div>
|
|
<div class="form-row">
|
|
{{ form.password.label }}
|
|
{{ form.password(class="") }}
|
|
{% if form.password.errors %}
|
|
<div class="errors">{{ form.password.errors[0] }}</div>
|
|
{% endif %}
|
|
</div>
|
|
<div class="form-row">{{ form.submit(class="btn btn-primary") }}</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|