32 lines
771 B
Python
32 lines
771 B
Python
import os
|
|
from sqlalchemy.orm import Session
|
|
from app.database.database import get_db, engine, Base
|
|
from app.models.user import User
|
|
|
|
# 设置测试环境变量
|
|
os.environ["TESTING"] = "True"
|
|
|
|
# 创建所有表
|
|
Base.metadata.create_all(bind=engine)
|
|
|
|
# 获取数据库会话
|
|
db = next(get_db())
|
|
|
|
# 检查是否已经存在 admin 用户
|
|
existing_admin = db.query(User).filter(User.username == "admin").first()
|
|
if not existing_admin:
|
|
# 创建 admin 用户,使用明文密码
|
|
admin_user = User(
|
|
username="admin",
|
|
password="admin",
|
|
department="IT",
|
|
role="admin"
|
|
)
|
|
db.add(admin_user)
|
|
db.commit()
|
|
print("Admin user created successfully!")
|
|
else:
|
|
print("Admin user already exists!")
|
|
|
|
# 关闭数据库会话
|
|
db.close() |