def makeGrid(self, cls): breadcrumbs = self.breadcrumbs[:] breadcrumbs.append({'text': "%ss" % cls.__name__}) grid = Grid(cls, self.session.query(cls).all()) grid.configure(readonly=True, exclude=[grid._get_fields()[0]]) grid.insert(grid._get_fields()[1], Field('%s overview page' % cls.__name__, value=lambda item: '<a href=%s>%s</a>' % (item.getUrl(), str(item)))) return {'grid': grid, 'cls': cls, 'breadcrumbs': breadcrumbs}
def _makeGrid(typ, klass, fields): """ Erzeugt aus einer Feldliste und einer Pythonklasse ein Grid fuer alle Felder. """ # print fields first_field = fields[0] # print first_field g = Grid(klass, session=__session__) g.configure(include=[getattr(g, fname) for fname in fields],readonly=True) g.append(Field('editlink', type=types.String, value=lambda item: "<a href=\"portal_dbadmin/objekt_edit?typ=%s&pk=%s\">Editieren</a>" % (typ, str(item._sa_instance_state.key[1])))) # print getattr(g, first_field) g.insert(getattr(g,first_field), Field('check', type=types.String, value=lambda item: "<input type='checkbox' name='objsel:list' value=\"%s\"/>" % (str(item._sa_instance_state.key[1])))) return g