hulai-website/hulai-admin-api/scripts/create_admin_user.py

42 行
1.1 KiB
Python

from __future__ import annotations
"""创建初始管理员账号
Usage: cd hulai-admin-api && python -m scripts.create_admin_user
"""
import sys
import os
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from app.database import SessionLocal, engine, Base
from app.models.user import AdminUser
from app.auth import hash_password
def main():
# Create tables if not exist
Base.metadata.create_all(bind=engine)
db = SessionLocal()
try:
existing = db.query(AdminUser).filter(AdminUser.username == "admin").first()
if existing:
print("管理员账号已存在")
return
user = AdminUser(
username="admin",
password_hash=hash_password("admin123"),
display_name="管理员",
role="admin",
is_active=True,
)
db.add(user)
db.commit()
print("管理员创建成功: admin / admin123")
print("⚠️ 请登录后立即修改密码!")
finally:
db.close()
if __name__ == "__main__":
main()