crud_article.py 749 B

1234567891011121314151617181920212223
  1. from typing import List
  2. from fastapi.encoders import jsonable_encoder
  3. from sqlalchemy.orm import Session
  4. from app.crud.base import CRUDBase
  5. from app.models.article import Article
  6. from app.schemas.article import ArticleCreate, ArticleUpdate
  7. from app.utils import random_name
  8. class CRUDArticle(CRUDBase[Article, ArticleCreate, ArticleUpdate]):
  9. def create_with_owner(
  10. self, db: Session, *, obj_in: ArticleCreate, owner_id: int, posted_datetime: str
  11. ) -> Article:
  12. obj_in_data = jsonable_encoder(obj_in)
  13. db_obj = self.model(**obj_in_data, owner_id=owner_id, posted_datetime=posted_datetime)
  14. db.add(db_obj)
  15. db.commit()
  16. db.refresh(db_obj)
  17. return db_obj
  18. article = CRUDArticle(Article)