Esempio n. 1
0
 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
Esempio n. 2
0
 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))