from typing import List from fastapi import APIRouter, Depends, HTTPException from sqlalchemy.orm import Session from app.api.v1.models.posts import Posts from app.api.v1.schemas.posts import PostsCreate, PostsResponse from app.api.core.dependencies.dependencies import get_db router = APIRouter() @router.get("/postss", response_model=List[PostsResponse]) def read_postss(db: Session = Depends(get_db)): postss = db.query(Posts).all() return postss @router.post("/postss", response_model=PostsResponse) def create_posts(posts: PostsCreate, db: Session = Depends(get_db)): db_posts = Posts(**posts.dict()) db.add(db_posts) db.commit() db.refresh(db_posts) return db_posts @router.get("/postss/{id}", response_model=PostsResponse) def read_posts(id: int, db: Session = Depends(get_db)): posts = db.query(Posts).get(id) if not posts: raise HTTPException(status_code=404, detail="Posts not found") return posts