Refactor credential.py: update create_credential() method

This commit is contained in:
Gabriel Luiz Freitas Almeida 2024-02-08 15:07:01 -03:00
commit 1148095156

View file

@ -2,11 +2,15 @@ from datetime import datetime
from uuid import UUID from uuid import UUID
from fastapi import APIRouter, Depends, HTTPException from fastapi import APIRouter, Depends, HTTPException
from sqlmodel import Session, select
from langflow.services.auth import utils as auth_utils from langflow.services.auth import utils as auth_utils
from langflow.services.auth.utils import get_current_active_user from langflow.services.auth.utils import get_current_active_user
from langflow.services.database.models.credential import Credential, CredentialCreate, CredentialRead, CredentialUpdate from langflow.services.database.models.credential import Credential, CredentialCreate, CredentialRead, CredentialUpdate
from langflow.services.database.models.user.model import User from langflow.services.database.models.user.model import User
from langflow.services.deps import get_session, get_settings_service from langflow.services.deps import get_session, get_settings_service
from langflow.services.database.models.user.model import User
from langflow.services.deps import get_session, get_settings_service
from sqlmodel import Session, select from sqlmodel import Session, select
router = APIRouter(prefix="/credentials", tags=["Credentials"]) router = APIRouter(prefix="/credentials", tags=["Credentials"])
@ -29,7 +33,7 @@ def create_credential(
if credential_exists: if credential_exists:
raise HTTPException(status_code=400, detail="Credential name already exists") raise HTTPException(status_code=400, detail="Credential name already exists")
db_credential = Credential.model_validate(credential, from_attributes=True) db_credential = Credential.model_validate(credential, from_attributes=True, update={"user_id": current_user.id})
if not db_credential.value: if not db_credential.value:
raise HTTPException(status_code=400, detail="Credential value cannot be empty") raise HTTPException(status_code=400, detail="Credential value cannot be empty")
encrypted = auth_utils.encrypt_api_key(db_credential.value, settings_service=settings_service) encrypted = auth_utils.encrypt_api_key(db_credential.value, settings_service=settings_service)