Mercurial > kallithea
changeset 6225:0b7b8e8031e6
db: add a RepoGroup.query() shortcut
author | Søren Løvborg <sorenl@unity3d.com> |
---|---|
date | Wed, 14 Sep 2016 15:53:13 +0200 |
parents | 506dd480e408 |
children | 590d5b7a2b26 |
files | kallithea/controllers/admin/repo_groups.py kallithea/model/db.py |
diffstat | 2 files changed, 14 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/controllers/admin/repo_groups.py Thu Sep 15 15:25:13 2016 +0200 +++ b/kallithea/controllers/admin/repo_groups.py Wed Sep 14 15:53:13 2016 +0200 @@ -109,9 +109,7 @@ return False def index(self, format='html'): - _list = RepoGroup.query() \ - .order_by(func.lower(RepoGroup.group_name)) \ - .all() + _list = RepoGroup.query(sorted=True).all() group_iter = RepoGroupList(_list, perm_set=['group.admin']) repo_groups_data = [] total_records = len(group_iter)
--- a/kallithea/model/db.py Thu Sep 15 15:25:13 2016 +0200 +++ b/kallithea/model/db.py Wed Sep 14 15:53:13 2016 +0200 @@ -1535,6 +1535,19 @@ parent_group = relationship('RepoGroup', remote_side=group_id) user = relationship('User') + @classmethod + def query(cls, sorted=False): + """Add RepoGroup-specific helpers for common query constructs. + + sorted: if True, apply the default ordering (name, case insensitive). + """ + q = super(RepoGroup, cls).query() + + if sorted: + q = q.order_by(func.lower(RepoGroup.group_name)) + + return q + def __init__(self, group_name='', parent_group=None): self.group_name = group_name self.parent_group = parent_group