51 lines
1.5 KiB
Python
51 lines
1.5 KiB
Python
from fastapi import APIRouter
|
|
|
|
from src.app.models.knowledge import Knowledge
|
|
from src.app.crud.crud_knowledges import create_knowledge, read_knowledges, read_knowledge, update_knowledge, delete_knowledge
|
|
from src.app.crud.crud_questions import read_questions as read_questions_crud
|
|
|
|
#Added in __ini__
|
|
router = APIRouter(tags=["knowledges"])
|
|
|
|
@router.post("/knowledges/")
|
|
def create(knowledge: Knowledge):
|
|
created_knowledge = create_knowledge(knowledge)
|
|
# if created_knowledge is None:
|
|
# raise NotFoundException("Failed to create knowledge")
|
|
return created_knowledge
|
|
|
|
@router.get("/knowledges/")
|
|
def read():
|
|
knowledges = read_knowledges()
|
|
return knowledges
|
|
|
|
@router.get("/knowledges/{id}")
|
|
def read(id: int):
|
|
knowledge = read_knowledge(id)
|
|
return knowledge
|
|
|
|
#TODO: adapt with correct pattern
|
|
@router.post("/knowledges/{id}")
|
|
def update(id: int, content: str, uri: str):
|
|
knowledge = update_knowledge(id, content, uri)
|
|
return knowledge
|
|
|
|
@router.delete("/knowledges/{id}")
|
|
def delete(id: int):
|
|
knowledge = delete_knowledge(id)
|
|
return knowledge
|
|
|
|
#TODO: find pattern
|
|
@router.post("/knowledges/{id}/questions")
|
|
def create_questions(id: int):
|
|
#SLM Generation
|
|
#create_question()
|
|
return True
|
|
|
|
@router.get("/knowledges/{id}/questions")
|
|
def read_questions(id: int):
|
|
knowledge: Knowledge = read_knowledge(id)
|
|
#questions = knowledge.questions
|
|
#TODO : refacto ?
|
|
questions = read_questions_crud(knowledge)
|
|
return questions |