mirror of https://github.com/gmbrax/Pilgrim.git
Started integrating the database to the UI so it can save the data into the database
This commit is contained in:
parent
4a5da4d44c
commit
f1195391db
|
|
@ -7,7 +7,10 @@ from pilgrim.ui.ui import UIApp
|
|||
class Application:
|
||||
def __init__(self):
|
||||
self.database = Database()
|
||||
self.ui = UIApp(ServiceManagerMock())
|
||||
session = self.database.session()
|
||||
session_manager = ServiceManager()
|
||||
session_manager.set_session(session)
|
||||
self.ui = UIApp(session_manager)
|
||||
|
||||
def run(self):
|
||||
self.database.create()
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
from typing import List
|
||||
|
||||
from ..models.entry import Entry
|
||||
from ..models.travel_diary import TravelDiary
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
from ..models.travel_diary import TravelDiary
|
||||
|
||||
import asyncio
|
||||
|
||||
class TravelDiaryService:
|
||||
def __init__(self,session):
|
||||
self.session = session
|
||||
def create(self, name:str):
|
||||
async def async_create(self, name:str):
|
||||
new_travel_diary = TravelDiary(name)
|
||||
self.session.add(new_travel_diary)
|
||||
self.session.commit()
|
||||
|
|
@ -18,14 +18,17 @@ class TravelDiaryService:
|
|||
def read_all(self):
|
||||
return self.session.query(TravelDiary).all()
|
||||
|
||||
def update(self, travel_diary_id: TravelDiary, travel_diary_dst: TravelDiary):
|
||||
original = self.read_by_id(travel_diary_id.id)
|
||||
def update(self, travel_diary_id: int, name: str):
|
||||
original = self.read_by_id(travel_diary_id)
|
||||
if original is not None:
|
||||
original.name = travel_diary_dst.name
|
||||
original.name = name
|
||||
self.session.commit()
|
||||
self.session.refresh(original)
|
||||
return original
|
||||
|
||||
async def async_update(self, travel_diary_id: int, name: str):
|
||||
return self.update(travel_diary_id, name)
|
||||
|
||||
def delete(self, travel_diary_id: TravelDiary):
|
||||
excluded = self.read_by_id(travel_diary_id.id)
|
||||
if excluded is not None:
|
||||
|
|
|
|||
|
|
@ -127,8 +127,8 @@ class DiaryListScreen(Screen):
|
|||
service_manager = self.app.service_manager
|
||||
travel_diary_service = service_manager.get_travel_diary_service()
|
||||
|
||||
# Uses async method
|
||||
diaries = await travel_diary_service.async_read_all()
|
||||
# Usa método síncrono agora
|
||||
diaries = travel_diary_service.read_all()
|
||||
|
||||
# Saves current state
|
||||
current_diary_id = None
|
||||
|
|
|
|||
|
|
@ -387,4 +387,4 @@ Screen.-modal {
|
|||
.RenameEntryModal-cancel-button {
|
||||
margin: 0 1;
|
||||
width: 1fr;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue