summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre-Yves Chibon <pingou@pingoured.fr>2012-04-26 21:13:07 +0200
committerPierre-Yves Chibon <pingou@pingoured.fr>2012-04-26 21:13:07 +0200
commit4264649f43d849b05abec644ceceff87aa8f7b16 (patch)
treeefed49f6d4a0704dc086f5b451973cdb4cc2a951
parentf3edede0be99070f5335e1f27d131ca31c8da454 (diff)
downloadkittystore-4264649f43d849b05abec644ceceff87aa8f7b16.tar.gz
kittystore-4264649f43d849b05abec644ceceff87aa8f7b16.tar.xz
kittystore-4264649f43d849b05abec644ceceff87aa8f7b16.zip
Return None if no email found - Cleaner import
-rw-r--r--kittystore/kittysastore.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/kittystore/kittysastore.py b/kittystore/kittysastore.py
index 85a38fb..cd9fbc4 100644
--- a/kittystore/kittysastore.py
+++ b/kittystore/kittysastore.py
@@ -18,12 +18,13 @@ license.
import datetime
from kittystore import KittyStore
-from kittysamodel import get_class_object
+from kittystore.kittysamodel import get_class_object
from sqlalchemy import create_engine, distinct, MetaData, and_
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
+from sqlalchemy.orm.exc import NoResultFound
def list_to_table_name(list_name):
@@ -116,8 +117,13 @@ class KittySAStore(KittyStore):
"""
email = get_class_object(list_to_table_name(list_name), 'email',
self.metadata)
- return self.session.query(email).filter_by(
- message_id=message_id).one()
+ mail = None
+ try:
+ mail = self.session.query(email).filter_by(
+ message_id=message_id).one()
+ except NoResultFound:
+ pass
+ return mail
def get_list_size(self, list_name):
""" Return the number of emails stored for a given mailing list.