- medicine_master.db (305,522행) CSV→SQLite 변환 완료 - get_db()에서 ATTACH DATABASE로 자동 연결 - GET /api/medicine-master/search: 상품명/업체명/표준코드 검색 - GET /api/medicine-master/categories: 전문일반구분별 통계 - config.py에 MEDICINE_MASTER_PATH 추가 - 취소된 제품 자동 필터링, 카테고리 필터 지원 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
43 lines
1.4 KiB
Python
43 lines
1.4 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
kdrug 프로젝트 공통 설정 파일
|
|
모든 Python 스크립트에서 이 설정을 import하여 사용
|
|
"""
|
|
|
|
import os
|
|
from pathlib import Path
|
|
|
|
# 프로젝트 루트 디렉토리
|
|
PROJECT_ROOT = Path(__file__).parent
|
|
|
|
# 데이터베이스 경로 - 항상 절대 경로 사용
|
|
DATABASE_PATH = PROJECT_ROOT / 'database' / 'kdrug.db'
|
|
MEDICINE_MASTER_PATH = PROJECT_ROOT / 'database' / 'medicine_master.db'
|
|
|
|
# 기타 자주 사용하는 경로들
|
|
STATIC_PATH = PROJECT_ROOT / 'static'
|
|
TEMPLATES_PATH = PROJECT_ROOT / 'templates'
|
|
DOCS_PATH = PROJECT_ROOT / 'docs'
|
|
BACKUP_PATH = PROJECT_ROOT / 'backups'
|
|
|
|
# 데이터베이스 연결 헬퍼 함수
|
|
def get_db_connection():
|
|
"""표준 데이터베이스 연결 반환"""
|
|
import sqlite3
|
|
conn = sqlite3.connect(str(DATABASE_PATH))
|
|
conn.row_factory = sqlite3.Row # 컬럼명으로 접근 가능하도록 설정
|
|
return conn
|
|
|
|
# 설정 확인용 (디버그)
|
|
if __name__ == "__main__":
|
|
print(f"프로젝트 루트: {PROJECT_ROOT}")
|
|
print(f"데이터베이스 경로: {DATABASE_PATH}")
|
|
print(f"데이터베이스 존재: {DATABASE_PATH.exists()}")
|
|
|
|
if DATABASE_PATH.exists():
|
|
conn = get_db_connection()
|
|
cursor = conn.cursor()
|
|
cursor.execute("SELECT COUNT(*) FROM sqlite_master WHERE type='table'")
|
|
table_count = cursor.fetchone()[0]
|
|
print(f"테이블 개수: {table_count}")
|
|
conn.close() |