Ajuda para Entrevistas
Preparação para a Entrevista
Currículo
Procura de Emprego
Recursos
Subscrição
PT
Telegrama
Iniciar sessão
Menu aberto
Ajuda para Entrevistas
Assistente de IA
Extensão do Navegador
Análise de entrevistas
Recursos
Descarregar
FAQ / Ajuda
Preparação para a Entrevista
Banco de Perguntas
Banco de Entrevistas
Entrevistas simuladas
Mentores
Recursos
FAQ / Ajuda
Procura de Emprego
Automação da Procura de Emprego
Análise de Mercado
Empregos do Telegram
Empresas
Recursos
Carreiras
Blog
FAQ / Documentação
Telegram Blog
Suporte ao Telegram
Jurídico
Reembolso
Termos
Privacidade
Titulares de direitos
Voltar às perguntas
Banco de Perguntas
Python - Desenvolvedor
Pergunta
Middle
importar json de fastapi importar APIRouter, Depends de sqlalchemy importar select de sqlalchemy.ext.asyncio importar AsyncSession de redis importar Redis de src.infrastructure.storage.db.models.product importar ProductDB de src.infrastructure.storage.db.models.factory importar FactoryDB router = APIRouter() redis = Redis.from_url("redis://localhost:6379/0") @router.get("/products/serials") async def get_serials_by_ids( ids: str, db: AsyncSession = Depends(get_db), ): product_ids = [int(x) for x in ids.split(",")] items = [] for product_id in product_ids: raw = redis.get(f"serial:{product_id}") if raw: items.append(json.loads(raw)) continue product = await db.get(ProductDB, product_id) factory = ( await db.execute(select(FactoryDB).where(FactoryDB.code == product.factory)) ).scalar_one() item = { "id": product.id, "serial_number": product.serial_number, "factory_number": factory.number, } redis.set(f"serial:{product_id}", json.dumps(item)) items.append(item) await db.commit() return items
Marcar como concluído
Anterior
Próximo