Patch both api and web sides
This commit is contained in:
@@ -146,12 +146,27 @@ def delete_knowledge_base(kb_id: str, db: Session = Depends(get_db)):
|
||||
@router.post("/bases/{kb_id}/documents")
|
||||
def upload_document(
|
||||
kb_id: str,
|
||||
data: KnowledgeDocumentCreate,
|
||||
data: Optional[KnowledgeDocumentCreate] = None,
|
||||
name: Optional[str] = Query(default=None),
|
||||
size: Optional[str] = Query(default=None),
|
||||
file_type: Optional[str] = Query(default=None),
|
||||
storage_url: Optional[str] = Query(default=None),
|
||||
db: Session = Depends(get_db)
|
||||
):
|
||||
kb = db.query(KnowledgeBase).filter(KnowledgeBase.id == kb_id).first()
|
||||
if not kb:
|
||||
raise HTTPException(status_code=404, detail="Knowledge base not found")
|
||||
|
||||
if data is None:
|
||||
if not name or not size:
|
||||
raise HTTPException(status_code=422, detail="name and size are required")
|
||||
data = KnowledgeDocumentCreate(
|
||||
name=name,
|
||||
size=size,
|
||||
fileType=file_type or "txt",
|
||||
storageUrl=storage_url,
|
||||
)
|
||||
|
||||
doc = KnowledgeDocument(
|
||||
id=str(uuid.uuid4())[:8],
|
||||
kb_id=kb_id,
|
||||
|
||||
Reference in New Issue
Block a user