Fix by_email_address (now for users/groups), add by_id for groups.

This commit is contained in:
Ricky Zhou (周家杰) 2008-03-06 20:14:33 -05:00
parent d2f770d47d
commit 660594dd13

View file

@ -115,7 +115,7 @@ class People(SABase):
A class method that can be used to search users A class method that can be used to search users
based on their email addresses since it is unique. based on their email addresses since it is unique.
''' '''
return cls.query.join('emails').filter_by(email=email).first() return cls.query.join(['email_purposes', 'person_email']).filter_by(email=email).one()
by_email_address = classmethod(by_email_address) by_email_address = classmethod(by_email_address)
@ -300,6 +300,24 @@ class Configs(SABase):
class Groups(SABase): class Groups(SABase):
'''Group that people can belong to.''' '''Group that people can belong to.'''
def by_id(cls, id):
'''
A class method that can be used to search groups
based on their unique id
'''
return cls.query.filter_by(id=id).one()
by_id = classmethod(by_id)
def by_email_address(cls, email):
'''
A class method that can be used to search groups
based on their email addresses since it is unique.
'''
return cls.query.join(['group_email_purposes', 'group_email']).filter_by(email=email).one()
by_email_address = classmethod(by_email_address)
def by_name(cls, name): def by_name(cls, name):
''' '''
A class method that permits to search groups A class method that permits to search groups