@@ -66,6 +66,7 @@ async def _get_session(self, commit: bool = True) -> AsyncIterator[AsyncSession]
6666 yield self ._external_session
6767
6868 async def save (self , instance : MODEL ) -> MODEL :
69+ self ._fail_if_invalid_models ([instance ])
6970 async with self ._get_session () as session :
7071 session .add (instance )
7172 return instance
@@ -74,6 +75,7 @@ async def save_many(
7475 self ,
7576 instances : Iterable [MODEL ],
7677 ) -> Iterable [MODEL ]:
78+ self ._fail_if_invalid_models (instances )
7779 async with self ._get_session () as session :
7880 session .add_all (instances )
7981 return instances
@@ -94,10 +96,12 @@ async def get_many(self, identifiers: Iterable[PRIMARY_KEY]) -> List[MODEL]:
9496 return [x for x in (await session .execute (stmt )).scalars ()]
9597
9698 async def delete (self , instance : MODEL ) -> None :
99+ self ._fail_if_invalid_models ([instance ])
97100 async with self ._get_session () as session :
98101 await session .delete (instance )
99102
100103 async def delete_many (self , instances : Iterable [MODEL ]) -> None :
104+ self ._fail_if_invalid_models (instances )
101105 async with self ._get_session () as session :
102106 for instance in instances :
103107 await session .delete (instance )
0 commit comments