Added extra check if a spool has no filament

This commit is contained in:
Donkie
2023-06-28 20:53:24 +02:00
parent 64aaf2a06a
commit bbe1dc0f83

View File

@@ -4,6 +4,7 @@ from datetime import UTC, datetime
from typing import Optional from typing import Optional
import sqlalchemy import sqlalchemy
from sqlalchemy.exc import NoResultFound
from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.ext.asyncio import AsyncSession
from sqlalchemy.orm import contains_eager, joinedload from sqlalchemy.orm import contains_eager, joinedload
@@ -198,7 +199,10 @@ async def use_length(db: AsyncSession, spool_id: int, length: float) -> models.S
.join(models.Spool, models.Spool.filament_id == models.Filament.id) .join(models.Spool, models.Spool.filament_id == models.Filament.id)
.where(models.Spool.id == spool_id), .where(models.Spool.id == spool_id),
) )
filament_info = result.one() try:
filament_info = result.one()
except NoResultFound as exc:
raise ItemNotFoundError("Filament not found for spool.") from exc
# Calculate and use weight # Calculate and use weight
weight = weight_from_length( weight = weight_from_length(