51 lines
1.5 KiB
Python
51 lines
1.5 KiB
Python
|
|
#!/usr/bin/env python3
|
|||
|
|
"""
|
|||
|
|
初始化管理员账户脚本
|
|||
|
|
创建默认管理员用户 admin/admin123
|
|||
|
|
"""
|
|||
|
|
import os
|
|||
|
|
import sys
|
|||
|
|
from app import create_app, db
|
|||
|
|
from app.models import Admin
|
|||
|
|
|
|||
|
|
def init_admin():
|
|||
|
|
"""初始化管理员账户"""
|
|||
|
|
app = create_app('default')
|
|||
|
|
|
|||
|
|
with app.app_context():
|
|||
|
|
try:
|
|||
|
|
# 检查是否已存在管理员用户
|
|||
|
|
existing_admin = Admin.query.filter_by(username='admin').first()
|
|||
|
|
if existing_admin:
|
|||
|
|
print(f"✅ 管理员用户已存在: username={existing_admin.username}")
|
|||
|
|
return False
|
|||
|
|
|
|||
|
|
# 创建默认管理员
|
|||
|
|
admin = Admin(
|
|||
|
|
username='admin',
|
|||
|
|
email='admin@example.com',
|
|||
|
|
role=1, # 1表示超级管理员
|
|||
|
|
status=1
|
|||
|
|
)
|
|||
|
|
admin.set_password('admin123')
|
|||
|
|
|
|||
|
|
db.session.add(admin)
|
|||
|
|
db.session.commit()
|
|||
|
|
|
|||
|
|
print("✅ 默认管理员创建成功!")
|
|||
|
|
print(" 用户名: admin")
|
|||
|
|
print(" 密码: admin123")
|
|||
|
|
print(" 状态: 正常")
|
|||
|
|
return True
|
|||
|
|
|
|||
|
|
except Exception as e:
|
|||
|
|
print(f"❌ 创建管理员失败: {str(e)}")
|
|||
|
|
db.session.rollback()
|
|||
|
|
return False
|
|||
|
|
|
|||
|
|
if __name__ == '__main__':
|
|||
|
|
success = init_admin()
|
|||
|
|
if success:
|
|||
|
|
print("✨ 请使用 admin/admin123 登录系统")
|
|||
|
|
else:
|
|||
|
|
print("ℹ️ 如果已存在管理员用户则无需重复初始化")
|