Files
gao 423b9ab55e STDIN
1 fix: 修复Vue模板语法错误和优化项目配置
   2
   3 - 修复MainDashboard.vue中多余的template结束标签导致的Vue编译错误
   4 - 更新项目文档QWEN.md,完善项目说明和部署指南
   5 - 优化create_admin.py脚本,从main.py导入统一配置
   6 - 增强PDF解析器错误处理和兼容性
   7 - 改进登录页面UI设计和用户体验
   8
   9 🤖 Generated with [Claude Code](https://claude.com/claude-code)
  10
  11 Co-Authored-By: Claude <[email protected]>
2025-11-02 22:44:18 +08:00

87 lines
2.3 KiB
Python

#!/usr/bin/env python3
"""
创建管理员用户脚本
用于方便测试,创建用户名admin,密码admin的账户
"""
import sys
import os
from datetime import datetime
import bcrypt
# 添加环境变量加载
import dotenv
dotenv.load_dotenv()
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
# 从 main.py 导入所有模型和配置
from main import (
engine,
SessionLocal,
Base,
User,
get_password_hash
)
def create_tables():
"""创建所有数据库表"""
try:
Base.metadata.create_all(bind=engine)
print("✅ 所有数据库表创建成功!")
except Exception as e:
print(f"❌ 创建数据库表失败: {e}")
raise
def create_admin_user():
"""创建管理员用户"""
# 先创建所有表
create_tables()
# 创建数据库会话
db = SessionLocal()
try:
# 检查admin用户是否已存在
existing_admin = db.query(User).filter(User.username == "admin").first()
if existing_admin:
print("❌ admin用户已存在!")
# 更新密码为admin
existing_admin.hashed_password = get_password_hash("admin")
db.commit()
print("✅ 已更新admin用户密码为'admin'")
return
# 检查[email protected]邮箱是否已存在
existing_email = db.query(User).filter(User.email == "[email protected]").first()
if existing_email:
print("❌ [email protected]邮箱已被使用!")
return
# 创建admin用户
hashed_password = get_password_hash("admin")
admin_user = User(
username="admin",
email="[email protected]",
hashed_password=hashed_password
)
db.add(admin_user)
db.commit()
db.refresh(admin_user)
print("✅ 成功创建admin用户!")
print(" 用户名: admin")
print(" 密码: admin")
print(" 邮箱: [email protected]")
print(" ID:", admin_user.id)
except Exception as e:
print(f"❌ 创建admin用户失败: {e}")
db.rollback()
finally:
db.close()
if __name__ == "__main__":
print("🚀 开始创建admin用户...")
create_admin_user()
print("✨ 完成!")