Correct use session during create db object.
This enable python3.8 support for staffeln
diff --git a/staffeln/db/sqlalchemy/api.py b/staffeln/db/sqlalchemy/api.py
index 6d9325f..ff2fcfd 100644
--- a/staffeln/db/sqlalchemy/api.py
+++ b/staffeln/db/sqlalchemy/api.py
@@ -211,12 +211,16 @@
return obj
def _create(self, model, values):
- obj = model()
- cleaned_values = {
- k: v for k, v in values.items() if k not in self._get_relationships(model)
- }
- obj.update(cleaned_values)
- obj.save()
+ session = get_session()
+ with session.begin():
+ obj = model()
+ cleaned_values = {
+ k: v
+ for k, v in values.items()
+ if k not in self._get_relationships(model)
+ }
+ obj.update(cleaned_values)
+ obj.save(session=session)
return obj
@staticmethod