cloudPlat/backend/init_db.py

40 lines
1.2 KiB
Python
Raw Normal View History

2025-07-10 10:02:51 +08:00
from app import create_app
from database import db
2025-07-09 22:44:18 +08:00
from models import User
def init_database():
"""初始化数据库和创建默认管理员用户"""
app = create_app()
with app.app_context():
# 创建所有表
db.create_all()
# 检查是否已有管理员用户
admin = User.query.filter_by(username='admin').first()
if not admin:
# 创建默认管理员
admin = User(
username='admin',
real_name='系统管理员',
email='admin@example.com',
role='admin'
)
admin.set_password('admin123')
admin.set_permissions([
'server.view', 'server.manage',
'script.view', 'script.manage',
'execute.run', 'user.manage'
])
db.session.add(admin)
db.session.commit()
print('默认管理员用户创建成功')
print('用户名: admin')
print('密码: admin123')
else:
print('管理员用户已存在')
if __name__ == '__main__':
init_database()