설앵초(Seolaengcho) 프로젝트 기술 컨텍스트
1. 프로젝트 목적
- 초보자 대상 드래그 앤 드롭 홈페이지 빌더 솔루션.
- 타겟: 포트폴리오, 소상공인, 소형 교회.
- 특징: 윈도우 IIS 환경 최적화, B2B 분양형(화이트 라벨링) 구조.
2. 핵심 기술 스택
- Language: Python 3.14+, Django 5.x
- DB: PostgreSQL 16 (JSONB 데이터 활용 필수)
- Server: Windows Server + IIS (wfastcgi/HttpPlatformHandler)
3. 핵심 DB 구조 (Schema)
- Tenant: 가입자 관리 (서브도메인, 플랜, 설정 JSONB)
- Page: 페이지별 레이아웃 (layout_data: JSONB)
- Menu: 트리형 메뉴 구조 (menu_structure: JSONB)
- Board/Post: 게시판 및 게시글 정보 (extra_data: JSONB)
4. 핵심 규칙 (Development Rules)
- 모든 레이아웃 정보는 관계형 DB 테이블로 쪼개지 말고 JSONB에 저장할 것.
- 가입자 격리는 tenant_id 외래키를 기반으로 미들웨어에서 처리.
- IIS 배포 시 정적 파일과 미디어 파일 권한 설정을 항상 고려할 것.
- 화이트 라벨링(브랜드 치환)이 가능하도록 설정값은 항상 모델의 JSONB 설정을 참조할 것.