Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
068f8459fe |
@@ -0,0 +1,44 @@
|
|||||||
|
"""Quick DB init script - creates tables and seeds admin user."""
|
||||||
|
import sys
|
||||||
|
sys.path.insert(0, ".")
|
||||||
|
|
||||||
|
from app.database import init_db, SessionLocal
|
||||||
|
from app.models.tenant import Tenant
|
||||||
|
from app.models.user import User
|
||||||
|
from app.core.security import hash_password
|
||||||
|
|
||||||
|
print("Initializing database...")
|
||||||
|
init_db()
|
||||||
|
print("Tables created.")
|
||||||
|
|
||||||
|
db = SessionLocal()
|
||||||
|
|
||||||
|
# Default tenant
|
||||||
|
t = db.query(Tenant).filter(Tenant.slug == "default").first()
|
||||||
|
if not t:
|
||||||
|
t = Tenant(name="默认租户", slug="default")
|
||||||
|
db.add(t)
|
||||||
|
db.flush()
|
||||||
|
print(f"Created tenant: {t.name} (id={t.id})")
|
||||||
|
else:
|
||||||
|
print(f"Tenant exists: {t.name} (id={t.id})")
|
||||||
|
|
||||||
|
# Admin user
|
||||||
|
u = db.query(User).filter(User.email == "admin@test.com").first()
|
||||||
|
if not u:
|
||||||
|
u = User(
|
||||||
|
email="admin@test.com",
|
||||||
|
username="admin",
|
||||||
|
hashed_password=hash_password("admin123"),
|
||||||
|
role="tenant_admin",
|
||||||
|
user_type="human",
|
||||||
|
tenant_id=t.id,
|
||||||
|
)
|
||||||
|
db.add(u)
|
||||||
|
db.commit()
|
||||||
|
print(f"Created admin user: {u.email} (id={u.id}, tenant_id={u.tenant_id})")
|
||||||
|
else:
|
||||||
|
print(f"Admin user exists: {u.email}")
|
||||||
|
|
||||||
|
db.close()
|
||||||
|
print("Done!")
|
||||||
Reference in New Issue
Block a user