From adeaabb72c6b37ec52710a1e49297391306ad462 Mon Sep 17 00:00:00 2001 From: CaCtUs1k Date: Wed, 6 Sep 2023 22:08:02 +0300 Subject: [PATCH 1/2] Solution --- app/cinema.db3 | Bin 0 -> 12288 bytes app/main.py | 26 +++++++++++++------------- app/managers.py | 46 ++++++++++++++++++++++++++++++++++++++++++++++ app/models.py | 8 ++++++++ 4 files changed, 67 insertions(+), 13 deletions(-) create mode 100644 app/cinema.db3 create mode 100644 app/managers.py create mode 100644 app/models.py diff --git a/app/cinema.db3 b/app/cinema.db3 new file mode 100644 index 0000000000000000000000000000000000000000..3f7fea027fcc77f0589670512879de87ffc4c62d GIT binary patch literal 12288 zcmeI&!Aiq07zgmAEprGng32f;=D4xpLGf;#L5E#8Yp3iq;+8_C?buom9`|T_15ZAL zXHTBY96M|XUWfcY`lU&lr1WHVD><%)-+Ng{K8Ms^9M|8 z%Kc1@UsO6+Z<-BXIDz1SbLk4cHnx(=MAh}o>Xgx~vTf7p>(82UkdG$WqBK@kSoHBq zG~`V$5ZA)z9lzOf{2sp*J??aacGJ@{TEYvs*Vfr}-8v7WNtXBLuj3Dn-?(vnUO7EK zuhw}ie|=Cbv3I>UpAj}=AG(Tw00bZa0SG_<0uX=z1Rwwb2tZ&H1@;V!*vD5gja2N* z;UJE}P_ZwvZy&96svXlJ2ewEO`6%;jl None: + self._connection = sqlite3.connect("cinema.db3") + self.table_name = "actors" + + def all(self) -> list: + actor_cursor = self._connection.execute( + f"SELECT * FROM {self.table_name}" + ) + + return [Actor(*row) for row in actor_cursor] + + def create(self, first_name_: str, last_name_: str) -> None: + self._connection.execute( + f"INSERT INTO {self.table_name} (first_name, last_name)" + f"VALUES (?, ?)", + (first_name_, last_name_) + ) + self._connection.commit() + + def update( + self, + id_to_upd: int, + new_first_name: str, + new_last_name: str + ) -> None: + self._connection.execute( + f"UPDATE {self.table_name} " + "SET first_name = ?, last_name = ? " + "Where id = ?", + (new_first_name, new_last_name, id_to_upd) + ) + self._connection.commit() + + def delete(self, id_to_del: int) -> None: + self._connection.execute( + f"DELETE FROM {self.table_name} " + "WHERE id = ?", + (id_to_del,) + ) + self._connection.commit() diff --git a/app/models.py b/app/models.py new file mode 100644 index 00000000..c25144fd --- /dev/null +++ b/app/models.py @@ -0,0 +1,8 @@ +from dataclasses import dataclass + + +@dataclass +class Actor: + id: int + first_name: str + last_name: str From 168c4f1531ae8e54f7c2acae6ef18df3e947b6bf Mon Sep 17 00:00:00 2001 From: CaCtUs1k Date: Thu, 7 Sep 2023 12:41:33 +0300 Subject: [PATCH 2/2] Solution --- app/managers.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/managers.py b/app/managers.py index ab244534..bf953e62 100644 --- a/app/managers.py +++ b/app/managers.py @@ -25,7 +25,7 @@ def create(self, first_name_: str, last_name_: str) -> None: def update( self, - id_to_upd: int, + id_to_update: int, new_first_name: str, new_last_name: str ) -> None: @@ -33,14 +33,14 @@ def update( f"UPDATE {self.table_name} " "SET first_name = ?, last_name = ? " "Where id = ?", - (new_first_name, new_last_name, id_to_upd) + (new_first_name, new_last_name, id_to_update) ) self._connection.commit() - def delete(self, id_to_del: int) -> None: + def delete(self, id_to_delete: int) -> None: self._connection.execute( f"DELETE FROM {self.table_name} " "WHERE id = ?", - (id_to_del,) + (id_to_delete,) ) self._connection.commit()