사용자 도구

사이트 도구


wiki:it:dream_of_enc:backend:models

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
wiki:it:dream_of_enc:backend:models [2025/07/31 00:59] – [주요 모델] syjang0803wiki:it:dream_of_enc:backend:models [2025/07/31 01:01] (현재) – [5) GameComment] syjang0803
줄 8: 줄 8:
  
 ==== 1) SiteInfo ==== ==== 1) SiteInfo ====
-----+
   * **설명**: 이 모델은 웹사이트 전반에 걸친 다양한 설정 정보와 메타데이터를 저장하는 데 사용됩니다. 예를 들어, 웹사이트의 총 방문자 수, 관리자 연락처 정보, 또는 특정 기능의 활성화 여부와 같은 동적인 설정 값들을 효율적으로 관리할 수 있습니다. 이는 애플리케이션 재배포 없이도 설정 변경이 가능하게 합니다.   * **설명**: 이 모델은 웹사이트 전반에 걸친 다양한 설정 정보와 메타데이터를 저장하는 데 사용됩니다. 예를 들어, 웹사이트의 총 방문자 수, 관리자 연락처 정보, 또는 특정 기능의 활성화 여부와 같은 동적인 설정 값들을 효율적으로 관리할 수 있습니다. 이는 애플리케이션 재배포 없이도 설정 변경이 가능하게 합니다.
   * **주요 컬럼**:   * **주요 컬럼**:
줄 14: 줄 14:
     * ''value'': 해당 ''key''에 연결된 실제 설정 값을 저장하는 문자열입니다. 이 값은 필요에 따라 다양한 형식(예: 숫자, JSON 문자열)으로 해석될 수 있습니다.     * ''value'': 해당 ''key''에 연결된 실제 설정 값을 저장하는 문자열입니다. 이 값은 필요에 따라 다양한 형식(예: 숫자, JSON 문자열)으로 해석될 수 있습니다.
  
-==== 2) Post ==== 
 ---- ----
 +==== 2) Post ====
 +
   * **설명**: 이 모델은 블로그 섹션의 개별 게시물 데이터를 체계적으로 저장하고 관리합니다. 각 인스턴스는 하나의 블로그 게시물을 나타내며, 제목, 내용, 작성자, 조회수 등 게시물에 필요한 핵심 정보를 포함합니다.   * **설명**: 이 모델은 블로그 섹션의 개별 게시물 데이터를 체계적으로 저장하고 관리합니다. 각 인스턴스는 하나의 블로그 게시물을 나타내며, 제목, 내용, 작성자, 조회수 등 게시물에 필요한 핵심 정보를 포함합니다.
   * **주요 컬럼**:   * **주요 컬럼**:
-컬럼명 설명 데이터 타입 |+ 
 +컬럼명 설명 데이터 타입 ^
 ^ ''title'' | 게시물의 제목을 저장합니다. | 문자열 | ^ ''title'' | 게시물의 제목을 저장합니다. | 문자열 |
 ^ ''content'' | 게시물의 본문 내용을 저장합니다. HTML 또는 마크다운 형식일 수 있습니다. | 텍스트 | ^ ''content'' | 게시물의 본문 내용을 저장합니다. HTML 또는 마크다운 형식일 수 있습니다. | 텍스트 |
줄 25: 줄 27:
   * **관계**: ''Post'' 모델은 ''Comment'' 모델과 '1:N'(일대다) 관계를 맺습니다. 이는 하나의 게시물이 여러 개의 댓글을 가질 수 있음을 의미하며, SQLAlchemy의 ''db.relationship'' 기능을 통해 이 관계가 정의됩니다. 이를 통해 특정 게시물에 속한 모든 댓글을 쉽게 조회할 수 있습니다.   * **관계**: ''Post'' 모델은 ''Comment'' 모델과 '1:N'(일대다) 관계를 맺습니다. 이는 하나의 게시물이 여러 개의 댓글을 가질 수 있음을 의미하며, SQLAlchemy의 ''db.relationship'' 기능을 통해 이 관계가 정의됩니다. 이를 통해 특정 게시물에 속한 모든 댓글을 쉽게 조회할 수 있습니다.
  
-==== 3) Comment ==== 
 ---- ----
 +==== 3) Comment ====
 +
   * **설명**: 이 모델은 ''Post'' 모델에 연결된 댓글 데이터를 저장하는 데 사용됩니다. 각 댓글은 특정 블로그 게시물에 대한 사용자의 의견이나 피드백을 나타냅니다. 비밀번호를 통해 댓글 작성자만 자신의 댓글을 수정하거나 삭제할 수 있도록 보안을 강화했습니다.   * **설명**: 이 모델은 ''Post'' 모델에 연결된 댓글 데이터를 저장하는 데 사용됩니다. 각 댓글은 특정 블로그 게시물에 대한 사용자의 의견이나 피드백을 나타냅니다. 비밀번호를 통해 댓글 작성자만 자신의 댓글을 수정하거나 삭제할 수 있도록 보안을 강화했습니다.
   * **주요 컬럼**:   * **주요 컬럼**:
-컬럼명 설명 데이터 타입 |+ 
 +컬럼명 설명 데이터 타입 ^
 ^ ''author'' | 댓글을 작성한 사용자의 이름을 저장합니다. | 문자열 | ^ ''author'' | 댓글을 작성한 사용자의 이름을 저장합니다. | 문자열 |
 ^ ''content'' | 댓글의 본문 내용을 저장합니다. | 텍스트 | ^ ''content'' | 댓글의 본문 내용을 저장합니다. | 텍스트 |
줄 36: 줄 40:
   * **참고**: ''password'' 필드는 보안을 위해 반드시 해시 처리되어 저장되어야 합니다.   * **참고**: ''password'' 필드는 보안을 위해 반드시 해시 처리되어 저장되어야 합니다.
  
-==== 4) Ranking ==== 
 ---- ----
 +==== 4) Ranking ====
 +
   * **설명**: 이 모델은 웹사이트에 포함된 미니게임의 플레이어 랭킹 정보를 기록하고 관리합니다. 각 랭킹 항목은 특정 플레이어의 게임 성과를 나타내며, 주로 닉네임, 점수, 그리고 게임 클리어 시간 등으로 구성됩니다. 이를 통해 사용자들은 자신의 순위를 확인하고 다른 플레이어들과 경쟁할 수 있습니다.   * **설명**: 이 모델은 웹사이트에 포함된 미니게임의 플레이어 랭킹 정보를 기록하고 관리합니다. 각 랭킹 항목은 특정 플레이어의 게임 성과를 나타내며, 주로 닉네임, 점수, 그리고 게임 클리어 시간 등으로 구성됩니다. 이를 통해 사용자들은 자신의 순위를 확인하고 다른 플레이어들과 경쟁할 수 있습니다.
   * **주요 컬럼**:   * **주요 컬럼**:
-컬럼명 설명 데이터 타입 |+ 
 +컬럼명 설명 데이터 타입 ^
 ^ ''nickname'' | 게임을 플레이한 사용자의 고유한 닉네임을 저장합니다. | 문자열 | ^ ''nickname'' | 게임을 플레이한 사용자의 고유한 닉네임을 저장합니다. | 문자열 |
 ^ ''score'' | 플레이어가 획득한 게임 점수를 저장합니다. 주로 고득점 순으로 랭킹이 매겨집니다. | 정수 | ^ ''score'' | 플레이어가 획득한 게임 점수를 저장합니다. 주로 고득점 순으로 랭킹이 매겨집니다. | 정수 |
 ^ ''time'' | 게임을 완료하는 데 걸린 시간을 저장합니다. 주로 빠른 시간 순으로 랭킹이 매겨집니다. | 정수 (초 단위 등) | ^ ''time'' | 게임을 완료하는 데 걸린 시간을 저장합니다. 주로 빠른 시간 순으로 랭킹이 매겨집니다. | 정수 (초 단위 등) |
  
-==== 5) GameComment ==== 
 ---- ----
 +==== 5) GameComment ====
 +
   * **설명**: 이 모델은 미니게임 섹션의 방명록 기능을 위해 사용됩니다. 게임을 플레이한 사용자들이 게임에 대한 소감, 피드백, 또는 간단한 메시지를 남길 수 있도록 합니다. 이는 사용자들 간의 상호작용을 촉진하고 게임에 대한 관심을 높이는 역할을 합니다.   * **설명**: 이 모델은 미니게임 섹션의 방명록 기능을 위해 사용됩니다. 게임을 플레이한 사용자들이 게임에 대한 소감, 피드백, 또는 간단한 메시지를 남길 수 있도록 합니다. 이는 사용자들 간의 상호작용을 촉진하고 게임에 대한 관심을 높이는 역할을 합니다.
   * **주요 컬럼**:   * **주요 컬럼**:
-컬럼명 설명 데이터 타입 |+ 
 +컬럼명 설명 데이터 타입 ^
 ^ ''author'' | 방명록에 소감을 남긴 사용자의 이름을 저장합니다. | 문자열 | ^ ''author'' | 방명록에 소감을 남긴 사용자의 이름을 저장합니다. | 문자열 |
 ^ ''text'' | 사용자가 남긴 소감 또는 메시지의 본문 내용을 저장합니다. | 텍스트 | ^ ''text'' | 사용자가 남긴 소감 또는 메시지의 본문 내용을 저장합니다. | 텍스트 |
  
 이러한 모든 모델 클래스들은 메인 애플리케이션 파일인 ''app.py''에서 임포트(Import)되어 사용됩니다. 애플리케이션의 API 엔드포인트들은 이 모델들을 활용하여 데이터베이스로부터 정보를 조회(읽기), 생성(쓰기), 업데이트(수정), 삭제(삭제)하는 모든 CRUD(Create, Read, Update, Delete) 작업을 수행합니다. 모델은 데이터 일관성과 무결성을 보장하며, 개발자가 복잡한 SQL 쿼리 없이도 파이썬 객체 지향 방식으로 데이터베이스와 상호작용할 수 있도록 돕습니다. 이러한 모든 모델 클래스들은 메인 애플리케이션 파일인 ''app.py''에서 임포트(Import)되어 사용됩니다. 애플리케이션의 API 엔드포인트들은 이 모델들을 활용하여 데이터베이스로부터 정보를 조회(읽기), 생성(쓰기), 업데이트(수정), 삭제(삭제)하는 모든 CRUD(Create, Read, Update, Delete) 작업을 수행합니다. 모델은 데이터 일관성과 무결성을 보장하며, 개발자가 복잡한 SQL 쿼리 없이도 파이썬 객체 지향 방식으로 데이터베이스와 상호작용할 수 있도록 돕습니다.
wiki/it/dream_of_enc/backend/models.1753923591.txt.gz · 마지막으로 수정됨: 저자 syjang0803

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki