initial build

This commit is contained in:
2022-10-02 17:12:41 +02:00
parent ef8a139e71
commit d6467b2a8f
16 changed files with 632 additions and 0 deletions

58
models/city.py Normal file
View File

@@ -0,0 +1,58 @@
import sqlite3
class City:
def __init__(self, connection : sqlite3.Connection, id, name):
self.connection = connection
self.id = id
self.name = name
def load_by_id(self):
cur = self.connection.cursor()
row = cur.execute("SELECT * FROM cities WHERE id = ?", (self.id,)).fetchone()
if row == None:
return False
self._set_row_values(row)
cur.close()
return True
def load_by_name(self):
cur = self.connection.cursor()
row = cur.execute("SELECT * FROM cities WHERE name = ?", (self.name,)).fetchone()
if row == None:
return False
self._set_row_values(row)
cur.close()
return True
def save(self):
cur = self.connection.cursor()
cur.execute("""
INSERT INTO cities
(id, name) VALUES (?, ?)
""", (self.id, self.name))
self.connection.commit()
cur.close()
return True
def update(self):
cur = self.connection.cursor()
cur.execute("""
UPDATE cities SET
name = ?,
WHERE id = ?
""", (self.name, self.id))
self.connection.commit()
cur.close()
return True
def _set_row_values(self, row):
self.id = row[0]
self.name = row[1]