skill-forge/API/app/application/answer_files_repository.py

36 lines
1013 B
Python

from sqlalchemy.orm import Session
from app.domain.models.answer_files import AnswerFile
class AnswerFilesRepository:
def __init__(self, db: Session):
self.db = db
def get_all(self):
return self.db.query(AnswerFile).all()
def get_by_id(self, answer_file_id: int):
return self.db.query(AnswerFile).filter(AnswerFile.id == answer_file_id).first()
def create(self, answer_file: AnswerFile):
self.db.add(answer_file)
self.db.commit()
self.db.refresh(answer_file)
return answer_file
def update(self, answer_file: AnswerFile):
self.db.merge(answer_file)
self.db.commit()
self.db.refresh(answer_file)
return answer_file
def delete(self, answer_file_id: int):
answer_file = self.db.query(AnswerFile).filter(AnswerFile.id == answer_file_id).first()
if answer_file:
self.db.delete(answer_file)
self.db.commit()
return answer_file
return None