mirror of https://github.com/gmbrax/Pilgrim.git
				
				
				
			Merge pull request #6 from gmbrax/feat/Database-Integration
Started integrating the database to the UI so it can save the data into the Database
This commit is contained in:
		
						commit
						e8f5d4b877
					
				|  | @ -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