Kamixitong/check_admins.py

45 lines
1.4 KiB
Python
Raw Normal View History

2025-11-22 16:48:45 +08:00
import sys
import os
# 添加项目根目录到Python路径
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
# 尝试加载.env文件
try:
from dotenv import load_dotenv
load_dotenv()
except ImportError:
pass
from app import create_app, db
from app.models.admin import Admin
# 使用生产环境配置
app = create_app('production')
with app.app_context():
try:
admins = Admin.query.all()
print('管理员账户数量:', len(admins))
for admin in admins:
print(f'用户名: {admin.username}, 状态: {admin.status}, 角色: {admin.role}')
except Exception as e:
print(f'查询管理员账户时出错: {e}')
# 尝试创建默认管理员账户
try:
from app.models.admin import Admin
admin = Admin.query.filter_by(username='admin').first()
if not admin:
admin = Admin(
username='admin',
email='admin@example.com',
role=1 # 超级管理员
)
admin.set_password('admin123')
db.session.add(admin)
db.session.commit()
print("默认管理员账号创建成功: admin/admin123")
else:
print("管理员账户已存在")
except Exception as e2:
print(f'创建默认管理员账户时出错: {e2}')