Files
arboris-novel/backend/app/repositories/prompt_repository.py
2025-10-21 09:51:27 +08:00

20 lines
611 B
Python

from typing import Iterable, Optional
from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from .base import BaseRepository
from ..models import Prompt
class PromptRepository(BaseRepository[Prompt]):
model = Prompt
async def get_by_name(self, name: str) -> Optional[Prompt]:
result = await self.session.execute(select(Prompt).where(Prompt.name == name))
return result.scalars().first()
async def list_all(self) -> Iterable[Prompt]:
result = await self.session.execute(select(Prompt).order_by(Prompt.name))
return result.scalars().all()