summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--photoblaster/db/models/__init__.py29
1 files changed, 4 insertions, 25 deletions
diff --git a/photoblaster/db/models/__init__.py b/photoblaster/db/models/__init__.py
index bb3e496..a30383a 100644
--- a/photoblaster/db/models/__init__.py
+++ b/photoblaster/db/models/__init__.py
@@ -6,6 +6,7 @@ from sqlalchemy.sql.expression import func
Base = declarative_base()
+
class Actions(object):
@classmethod
def create(cls, **kwargs):
@@ -14,8 +15,6 @@ class Actions(object):
session.add(cls(**kwargs))
session.commit()
except:
- #also took this pattern from the sqlalchemy docs to handle "rollback exceptions"
- #should I show you the code that's causing the error now? yep
session.rollback()
raise
finally:
@@ -31,54 +30,34 @@ class Actions(object):
except:
session.rollback()
raise
-#what about update, how it's used? we should maybe look at the flush thing
+
def free(self):
- #I tried creating this free method to help with these timeouts
session = inspect(self).session
session.close()
SessionHeap.remove()
-
+
@classmethod
def _search(cls, **kwargs):
session = Session()
- print "session()"
query = session.query(cls).filter_by(**kwargs)
session.close()
return query
try:
session.commit()
except:
- print "session.rollback()"
session.rollback()
raise
finally:
- print "session.close()"
session.close()
SessionHeap.remove()
return query
-# def _search(cls, **kwargs):
-# session = SessionHeap()
-# print "session()"
-# query = session.query(cls).filter_by(**kwargs)
-# try:
-# session.commit()
-# except:
-# print "session.rollback()"
-# session.rollback()
-# raise
-# finally:
-# print "session.close()"
-# session.close()
-# SessionHeap.remove()
-# return query
-#
+
@classmethod
def search_random(cls, **kwargs):
return cls._search(**kwargs).order_by(func.rand())
@classmethod
def search(cls, **kwargs):
- #something with this maybe? is it creating an extra session instance? because it seems like
return cls._search(**kwargs).order_by(desc(cls.id))
@classmethod