feat(models): add org_id to Article, PublishRecord, ContentMetrics, SearchRanking, GeoReadinessScore

- Add org_id column to 5 models with default='default'
- Update to_dict() methods for ContentMetrics, SearchRanking, GeoReadinessScore
- Add ALTER TABLE migrations in database.py init_db()
- Add org_id to 6 Pydantic response schemas
- Add require_role() helper factory in auth.py
This commit is contained in:
Yuzhiran Dev
2026-06-17 14:27:27 +08:00
parent 00431c827b
commit dcfeccc97b
6 changed files with 42 additions and 3 deletions
+5
View File
@@ -126,6 +126,11 @@ def init_db():
("menus", "sort_order", "INTEGER DEFAULT 0"),
("menus", "roles", "JSON DEFAULT '[]'::json"),
("menus", "is_active", "BOOLEAN DEFAULT TRUE"),
("publish_records", "org_id", "VARCHAR DEFAULT 'default'"),
("content_metrics", "org_id", "VARCHAR DEFAULT 'default'"),
("search_rankings", "org_id", "VARCHAR DEFAULT 'default'"),
("geo_readiness_scores", "org_id", "VARCHAR DEFAULT 'default'"),
("articles", "org_id", "VARCHAR DEFAULT 'default'"),
]:
try:
conn.execute(text(f"ALTER TABLE {table} ADD COLUMN IF NOT EXISTS {col} {typ}"))