leonsimon23's picture
Create init_db.py
1746d9b verified
raw
history blame contribute delete
877 Bytes
from app.main import db
from app.models import User, Tenant
import os
def init_db():
# 创建所有表
db.create_all()
# 检查是否已存在默认管理员
admin = User.query.filter_by(email=os.getenv('DEFAULT_ADMIN_EMAIL')).first()
if not admin:
# 创建默认租户
default_tenant = Tenant(name='Default Tenant')
db.session.add(default_tenant)
db.session.commit()
# 创建默认管理员
admin = User(
email=os.getenv('DEFAULT_ADMIN_EMAIL', 'admin@example.com'),
username=os.getenv('DEFAULT_ADMIN_USERNAME', 'admin'),
role='admin',
tenant_id=default_tenant.id
)
admin.set_password(os.getenv('DEFAULT_ADMIN_PASSWORD', 'admin'))
db.session.add(admin)
db.session.commit()
if __name__ == '__main__':
init_db()