- tb_user 用户表、tb_log 日志表 - Flask-Login 认证(login/logout/权限装饰器) - 用户管理页(admin 专有):增删改查、改密、角色设置 - 操作日志页:分页查询、按用户/类型筛选 - 测试操作区指令自动记录日志 - 所有页面加 @login_required 保护 - 默认管理员 admin/admin123(首次启动自动创建)
37 lines
1.8 KiB
HTML
37 lines
1.8 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>登录 - EDC 工装管理系统</title>
|
|
<style>
|
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #f5f6fa; display: flex; justify-content: center; align-items: center; min-height: 100vh; }
|
|
.login-box { background: #fff; padding: 40px; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,.1); width: 360px; }
|
|
.login-box h2 { text-align: center; margin-bottom: 24px; color: #2c3e50; }
|
|
.login-box label { display: block; font-size: 13px; margin-bottom: 4px; color: #555; }
|
|
.login-box input { width: 100%; padding: 10px 12px; margin-bottom: 16px; border: 1px solid #ddd; border-radius: 6px; font-size: 14px; }
|
|
.login-box button { width: 100%; padding: 10px; background: #3498db; color: #fff; border: none; border-radius: 6px; font-size: 15px; cursor: pointer; }
|
|
.login-box button:hover { background: #2980b9; }
|
|
.flash-error { color: #e74c3c; font-size: 13px; text-align: center; margin-bottom: 12px; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="login-box">
|
|
<h2>EDC 工装管理系统</h2>
|
|
{% with messages = get_flashed_messages() %}
|
|
{% if messages %}
|
|
<div class="flash-error">{{ messages[0] }}</div>
|
|
{% endif %}
|
|
{% endwith %}
|
|
<form method="post">
|
|
<label>用户名</label>
|
|
<input type="text" name="username" required autofocus>
|
|
<label>密码</label>
|
|
<input type="password" name="password" required>
|
|
<button type="submit">登录</button>
|
|
</form>
|
|
</div>
|
|
</body>
|
|
</html>
|