# HG changeset patch # User Tero Marttila # Date 1372978953 -10800 # Node ID 088d68412650b7d1e5eb02cb76d11794230e1bf2 # Parent 97a0a66e221141259a87362157b4f0f3ea4eb850 pvl.verkko.table: better default handlers diff -r 97a0a66e2211 -r 088d68412650 pvl/verkko/table.py --- a/pvl/verkko/table.py Fri Jul 05 02:02:19 2013 +0300 +++ b/pvl/verkko/table.py Fri Jul 05 02:02:33 2013 +0300 @@ -392,6 +392,7 @@ ) TABLE = None + DB_TABLE = None # target Handlers for table links TABLE_URL = None @@ -413,8 +414,11 @@ """ Database SELECT query. """ + + if self.DB_CLASS is None : + raise NotImplementedError() - raise NotImplementedError() + return self.db.query(self.DB_CLASS) def sort (self, query) : """ @@ -533,6 +537,12 @@ return ', '.join(value for values in self.filters.itervalues() for value in values) + def title (self) : + if self.filters : + return "{title}: {filters}".format(title=self.TABLE.ITEMS, filters=self.filters_title()) + else : + return self.TABLE.ITEMS + def process (self) : """ Process request args -> self.filters, self.sorts, self.page, self.query @@ -573,4 +583,8 @@ page = page, hilight = hilight, ) - + + def render (self) : + return ( + self.render_table(self.query, filters=self.filters, sort=self.sorts, page=self.page), + )