Database

תיעוד של מערכת מסד הנתונים והמודלים.

Database Manager

database.init_database()[מקור]
Return type:

DatabaseManager

Models

CodeSnippet Model

class database.CodeSnippet(user_id, file_name, code, programming_language, description='', tags=None, version=1, created_at=None, updated_at=None, is_active=True)[מקור]

Bases: object

ייצוג קטע קוד הנשמר במסד הנתונים.

פרמטרים:
user_id: int
file_name: str
code: str
programming_language: str
description: str = ''
tags: List[str] = None
version: int = 1
created_at: datetime = None
updated_at: datetime = None
is_active: bool = True
__init__(user_id, file_name, code, programming_language, description='', tags=None, version=1, created_at=None, updated_at=None, is_active=True)
פרמטרים:
Return type:

None

DatabaseManager Class

class database.DatabaseManager[מקור]

Bases: object

אחראי על חיבור MongoDB והגדרת אינדקסים.

__init__()[מקור]
connect()[מקור]
close()[מקור]
close_connection()[מקור]
save_snippet(snippet)[מקור]
Return type:

bool

search_snippets(user_id, search_term='', programming_language=None, tags=None, limit=20)[מקור]
Return type:

List[Dict]

פרמטרים:
get_snippet(user_id, file_name)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

get_user_snippets(user_id, limit=50)[מקור]
Return type:

List[Dict]

פרמטרים:
delete_snippet(user_id, file_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • file_name (str)

delete_all_user_snippets(user_id)[מקור]
Return type:

int

פרמטרים:

user_id (int)

get_user_statistics(user_id)[מקור]
Return type:

Dict[str, Any]

פרמטרים:

user_id (int)

get_global_statistics()[מקור]
Return type:

Dict[str, Any]

save_code_snippet(snippet)[מקור]
Return type:

bool

save_file(user_id, file_name, code, programming_language, extra_tags=None)[מקור]
Return type:

bool

פרמטרים:
get_latest_version(user_id, file_name)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

get_file(user_id, file_name)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

get_all_versions(user_id, file_name)[מקור]
Return type:

List[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

get_version(user_id, file_name, version)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

  • version (int)

get_user_files(user_id, limit=50)[מקור]
Return type:

List[Dict]

פרמטרים:
search_code(user_id, query, programming_language=None, tags=None, limit=20)[מקור]
Return type:

List[Dict]

פרמטרים:
get_user_files_by_repo(user_id, repo_tag, page=1, per_page=50)[מקור]
Return type:

Tuple[List[Dict], int]

פרמטרים:
delete_file(user_id, file_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • file_name (str)

soft_delete_files_by_names(user_id, file_names)[מקור]
Return type:

int

פרמטרים:
delete_file_by_id(file_id)[מקור]
Return type:

int

פרמטרים:

file_id (str)

get_file_by_id(file_id)[מקור]
Return type:

Optional[Dict]

פרמטרים:

file_id (str)

get_user_stats(user_id)[מקור]
Return type:

Dict[str, Any]

פרמטרים:

user_id (int)

rename_file(user_id, old_name, new_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • old_name (str)

  • new_name (str)

save_large_file(large_file)[מקור]
Return type:

bool

get_large_file(user_id, file_name)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

get_large_file_by_id(file_id)[מקור]
Return type:

Optional[Dict]

פרמטרים:

file_id (str)

get_user_large_files(user_id, page=1, per_page=8)[מקור]
Return type:

Tuple[List[Dict], int]

פרמטרים:
delete_large_file(user_id, file_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • file_name (str)

delete_large_file_by_id(file_id)[מקור]
Return type:

bool

פרמטרים:

file_id (str)

get_all_user_files_combined(user_id)[מקור]
Return type:

Dict[str, List[Dict]]

פרמטרים:

user_id (int)

save_backup_rating(user_id, backup_id, rating)[מקור]
Return type:

bool

פרמטרים:
get_backup_rating(user_id, backup_id)[מקור]
Return type:

Optional[str]

פרמטרים:
  • user_id (int)

  • backup_id (str)

delete_backup_ratings(user_id, backup_ids)[מקור]
Return type:

int

פרמטרים:
save_backup_note(user_id, backup_id, note)[מקור]
Return type:

bool

פרמטרים:
get_backup_note(user_id, backup_id)[מקור]
Return type:

Optional[str]

פרמטרים:
  • user_id (int)

  • backup_id (str)

save_github_token(user_id, token)[מקור]
Return type:

bool

פרמטרים:
get_github_token(user_id)[מקור]
Return type:

Optional[str]

פרמטרים:

user_id (int)

delete_github_token(user_id)[מקור]
Return type:

bool

פרמטרים:

user_id (int)

save_selected_repo(user_id, repo_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • repo_name (str)

get_selected_repo(user_id)[מקור]
Return type:

Optional[str]

פרמטרים:

user_id (int)

save_user(user_id, username=None)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • username (str)

save_drive_tokens(user_id, token_data)[מקור]
Return type:

bool

פרמטרים:
get_drive_tokens(user_id)[מקור]
Return type:

Optional[Dict[str, Any]]

פרמטרים:

user_id (int)

delete_drive_tokens(user_id)[מקור]
Return type:

bool

פרמטרים:

user_id (int)

save_drive_prefs(user_id, prefs)[מקור]
Return type:

bool

פרמטרים:
get_drive_prefs(user_id)[מקור]
Return type:

Optional[Dict[str, Any]]

פרמטרים:

user_id (int)

Database Operations

Save Operations

DatabaseManager.save_snippet(snippet)[מקור]
Return type:

bool

Search Operations

DatabaseManager.search_snippets(user_id, search_term='', programming_language=None, tags=None, limit=20)[מקור]
Return type:

List[Dict]

פרמטרים:
DatabaseManager.get_snippet(user_id, file_name)[מקור]
Return type:

Optional[Dict]

פרמטרים:
  • user_id (int)

  • file_name (str)

DatabaseManager.get_user_snippets(user_id, limit=50)[מקור]
Return type:

List[Dict]

פרמטרים:

Delete Operations

DatabaseManager.delete_snippet(user_id, file_name)[מקור]
Return type:

bool

פרמטרים:
  • user_id (int)

  • file_name (str)

DatabaseManager.delete_all_user_snippets(user_id)[מקור]
Return type:

int

פרמטרים:

user_id (int)

Statistics Operations

DatabaseManager.get_user_statistics(user_id)[מקור]
Return type:

Dict[str, Any]

פרמטרים:

user_id (int)

DatabaseManager.get_global_statistics()[מקור]
Return type:

Dict[str, Any]