def _compute_titles_from_table(self, table): titles = [] schema = DatabaseData().schema() for i in range(schema.nfields() + 1): if i == 0: text = _("Table name") elif table in schema.mapping(): text = schema.mapping()[table].desc[i-1] or "" else: text = "" titles.append(text) return titles
def _autofill(self, table): schema = DatabaseData().schema() if not schema.execution_allowed(): return False if table not in schema.mapping(): return False mapping = schema.mapping()[table].get_mapping_onto("internal", "default") for i in range(0, len(mapping)): if mapping[i] == "" or mapping[i] is None: continue try: val = eval(mapping[i]) if val is None: continue except Exception: msg = _('%s is not a valid expression.') mbox = MessageBox(msg % mapping[i]) mbox.render(self.loop) mapping[i] = None continue self.cells[i+1].widget_list[1].set_edit_text(str(val))