-1

Trying to connect sqlite3 database to my tableview in ui form (On my iPad). Used many cases but without result.

      import ui
      import sqlite3

      def loadData (self):
      connection = sqlite3.connect('pythonsqlite.db')
      query = "SELECT * FROM projects"
      result = connection.execute(query)
      self.tableview1.setRowCount(0)
      for row_number, row_data in enumerate(result):
      self tableview1.insertRow(row_number)
      for column_number, data in enumerate(row_data):
      self.tableview1.setItem(row_number, column_number)
      connection.close()

      ui.load_view('MyForm').present('sheet')

It gives me

     self tableview1.insertRow(row_number)
              ^
     SyntaxError: invalid syntax

Can anybody give me any direction?

2 Answers2

0
     import ui
     import sqlite3 as db


     tv = ui.TableView('tableview1')
     conn = db.connect('pythonsqlite.db')
     conn.row_factory = lambda cursor, row: row[0]
     c = conn.cursor()
     ids = c.execute('SELECT name FROM projects').fetchall()
     print(ids)

     tv.data_source = ui.ListDataSource(ids)
     tv.present('fullscreen') 

     ui.load_view('MyForm').present('sheet')

I can create custom tableview, but can’t pass data to existing one in my ui form.

0

Here’s a minimal example showing how to refer to a UI designer element in your code.

import ui

v = ui.load_view()
v['tableview1'].background_color = 'grey'

v.present('fullscreen')
Mikael
  • 136
  • 1
  • 5