Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Tableview reload
-
I did it, thank you so much!
-
You should post your solution (or a link to gist) back here to help others that might have similar issues.
-
Here is how it works for me.
import ui import sqlite3 as db import dialogs conn = db.connect('pythonsqlite.db') conn.row_factory = lambda cursor, row: row[0] c = conn.cursor() ids = c.execute('SELECT name FROM Names').fetchall() ids1 = c.execute('SELECT surname FROM Names').fetchall() class MyTableViewDataSource (object): def __init__(self): self.items = ids self.items1 = ids1 def tableview_number_of_sections(self, tableview): # Return the number of sections (defaults to 1) return 1 def tableview_number_of_rows(self, tableview, section): # Return the number of rows in the section return len(self.items) def tableview_cell_for_row(self, tableview, section, row): # Create and return a cell for the given section/row cell = ui.TableViewCell('subtitle') cell.text_label.text = self.items[row] cell.detail_text_label.text = self.items1[row] return cell def tableview_title_for_header(self, tableview, section): # Return a title for the given section. # If this is not implemented, no section headers will be shown. return ('Name') def tableview_can_delete(self, tableview, section, row): # Return True if the user should be able to delete the given row. return True def tableview_can_move(self, tableview, section, row): # Return True if a reordering control should be shown for the given row (in editing mode). return True def tableview_delete(self, tableview, section, row): # Called when the user confirms deletion of the given row. #my = ("Name=""'"+tableview.data_source.data[row]+"'") #print(my) print ('Delete row ' + tableview.data_source.items[row]) sqliteConnection = db.connect('pythonsqlite.db') cursor = sqliteConnection.cursor() print("Connected to SQLite") # Deleting single record now sql_delete_query = "DELETE from Names where Name=""'"+tableview.data_source.items[row]+"'" print(sql_delete_query) cursor.execute(sql_delete_query) sqliteConnection.commit() print("Record deleted successfully ") del tableview.data_source.items[row] del tableview.data_source.items1[row] cursor.close() tableview.reload() pass def tableview_move_row(self, tableview, from_section, from_row, to_section, to_row): # Called when the user moves a row with the reordering control (in editing mode). pass def add(self, sender): item = dialogs.input_alert('Add your name') item1 = dialogs.input_alert('Add your surname') if not item == None: self.items.append(item) self.items1.append(item1) view['tableview1'].reload() sqliteConnection = db.connect('pythonsqlite.db') cursor = sqliteConnection.cursor() print("Connected to SQLite") # adding single record now sql_add_data = "INSERT INTO Names (Name, Surname) VALUES "+"("+"'"+item+"'"+", "+"'"+item1+"'"+")" cursor.execute(sql_add_data) sqliteConnection.commit() cursor.close() view = ui.load_view('MyForm') source = MyTableViewDataSource() view.right_button_items = [ui.ButtonItem(title='add', action=source.add)] view['tableview1'].data_source = source view.present('sheet')
-
But. Can you bring a dB from another place and drop it in Pythonista and how u do it
-
-
@cvp said:
import
For me the file is not accessible greyes out
https://imgur.com/KTy2w8o all my dB files are not selectables -
-
@soydepr other solution: you can share a .db file from the Files app to Pythonista and run the standard "import file" script
-
@cvp is original solution a bug ,
Thanks I confirm your other solution does work
-
-
This post is deleted!