Skip to content

Commit de6ea0e

Browse files
committed
feat: update experiment router
1 parent 2468f0e commit de6ea0e

File tree

1 file changed

+15
-6
lines changed

1 file changed

+15
-6
lines changed

src/router/experiment.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,23 @@
1-
from src.model import Experiment
2-
from src.router.base import BaseController
1+
from litestar.dto import DataclassDTO, DTOConfig
2+
3+
from src.model.experiment import Experiment, ExperimentDataclass
4+
from src.model.facility import Facility
5+
from src.router.base import DataclassController
36
from src.router.utils.dto import DTOGenerator
47

58
__all__ = ("ExperimentController",)
69

710

8-
ExperimentDTO = DTOGenerator[Experiment]()
11+
class ExperimentDTO(DataclassDTO[ExperimentDataclass]):
12+
config = DTOConfig(rename_strategy="camel")
13+
14+
15+
ExperimentReturnDTO = DTOGenerator[Experiment]()
916

1017

11-
class ExperimentController(BaseController[Experiment]):
18+
class ExperimentController(DataclassController[Experiment, ExperimentDataclass]):
1219
path = "/experiment"
13-
dto = ExperimentDTO.write_dto
14-
return_dto = ExperimentDTO.read_dto
20+
dto = ExperimentDTO
21+
return_dto = ExperimentDTO
22+
attr_map = {"facilities": ("facility_id", Facility)}
23+
selectinload_attrs = [Experiment.facilities]

0 commit comments

Comments
 (0)