mirror of https://github.com/gmbrax/Pilgrim.git
				
				
				
			Merge pull request #10 from gmbrax/feat/Database-Integration
Feat/database integration
This commit is contained in:
		
						commit
						4d3606b197
					
				|  | @ -7,7 +7,10 @@ from pilgrim.ui.ui import UIApp | ||||||
| class Application: | class Application: | ||||||
|     def __init__(self): |     def __init__(self): | ||||||
|         self.database = Database() |         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): |     def run(self): | ||||||
|         self.database.create() |         self.database.create() | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| from typing import List | from typing import List | ||||||
| 
 |  | ||||||
| from ..models.entry import Entry | from ..models.entry import Entry | ||||||
| from ..models.travel_diary import TravelDiary | from ..models.travel_diary import TravelDiary | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -1,10 +1,10 @@ | ||||||
| from ..models.travel_diary import TravelDiary | from ..models.travel_diary import TravelDiary | ||||||
| 
 | import asyncio | ||||||
| 
 | 
 | ||||||
| class TravelDiaryService: | class TravelDiaryService: | ||||||
|     def __init__(self,session): |     def __init__(self,session): | ||||||
|         self.session = session |         self.session = session | ||||||
|     def create(self, name:str): |     async def async_create(self, name:str): | ||||||
|         new_travel_diary = TravelDiary(name) |         new_travel_diary = TravelDiary(name) | ||||||
|         self.session.add(new_travel_diary) |         self.session.add(new_travel_diary) | ||||||
|         self.session.commit() |         self.session.commit() | ||||||
|  | @ -18,14 +18,17 @@ class TravelDiaryService: | ||||||
|     def read_all(self): |     def read_all(self): | ||||||
|         return self.session.query(TravelDiary).all() |         return self.session.query(TravelDiary).all() | ||||||
| 
 | 
 | ||||||
|     def update(self, travel_diary_id: TravelDiary, travel_diary_dst: TravelDiary): |     def update(self, travel_diary_id: int, name: str): | ||||||
|         original = self.read_by_id(travel_diary_id.id) |         original = self.read_by_id(travel_diary_id) | ||||||
|         if original is not None: |         if original is not None: | ||||||
|             original.name = travel_diary_dst.name |             original.name = name | ||||||
|             self.session.commit() |             self.session.commit() | ||||||
|             self.session.refresh(original) |             self.session.refresh(original) | ||||||
|         return 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): |     def delete(self, travel_diary_id: TravelDiary): | ||||||
|         excluded = self.read_by_id(travel_diary_id.id) |         excluded = self.read_by_id(travel_diary_id.id) | ||||||
|         if excluded is not None: |         if excluded is not None: | ||||||
|  |  | ||||||
|  | @ -127,8 +127,8 @@ class DiaryListScreen(Screen): | ||||||
|             service_manager = self.app.service_manager |             service_manager = self.app.service_manager | ||||||
|             travel_diary_service = service_manager.get_travel_diary_service() |             travel_diary_service = service_manager.get_travel_diary_service() | ||||||
| 
 | 
 | ||||||
|             # Uses async method |             # Usa método síncrono agora | ||||||
|             diaries = await travel_diary_service.async_read_all() |             diaries = travel_diary_service.read_all() | ||||||
| 
 | 
 | ||||||
|             # Saves current state |             # Saves current state | ||||||
|             current_diary_id = None |             current_diary_id = None | ||||||
|  |  | ||||||
|  | @ -387,4 +387,4 @@ Screen.-modal { | ||||||
| .RenameEntryModal-cancel-button { | .RenameEntryModal-cancel-button { | ||||||
|     margin: 0 1; |     margin: 0 1; | ||||||
|     width: 1fr; |     width: 1fr; | ||||||
| }  | } | ||||||
		Loading…
	
		Reference in New Issue