This commit is contained in:
2026-03-04 00:52:35 +08:00
parent f3196f3e87
commit 006a30ea0c
3 changed files with 97 additions and 4 deletions
+59
View File
@@ -0,0 +1,59 @@
import asyncio
from sqlalchemy import select
from database.database import db_manager
from models.database import User
from services.auth_service import get_password_hash
from utils.logger import get_logger
logger = get_logger(__name__)
async def create_admin_user():
"""创建默认管理员账户"""
try:
await db_manager.connect()
async with db_manager.session() as session:
result = await session.execute(
select(User).where(User.username == "admin")
)
existing_admin = result.scalar_one_or_none()
if existing_admin:
logger.info("管理员账户已存在")
print("管理员账户已存在")
print("用户名: admin")
return
admin = User(
username="admin",
email="admin@gemold.com",
hashed_password=get_password_hash("admin123"),
full_name="系统管理员",
is_active=True,
is_superuser=True
)
session.add(admin)
await session.commit()
logger.info("管理员账户创建成功")
print("=" * 50)
print("管理员账户创建成功!")
print("=" * 50)
print("用户名: admin")
print("密码: admin123")
print("邮箱: admin@gemold.com")
print("=" * 50)
print("⚠️ 请登录后立即修改密码!")
print("=" * 50)
except Exception as e:
logger.error(f"创建管理员账户失败: {e}")
print(f"创建管理员账户失败: {e}")
finally:
await db_manager.disconnect()
if __name__ == "__main__":
asyncio.run(create_admin_user())