Fixed the entry model to accept datetime instead of a string containing the creating date

This commit is contained in:
Gustavo Henrique Santos Souza de Miranda 2025-06-25 17:26:52 -03:00
parent e8f5d4b877
commit 56e42c51bd
3 changed files with 7 additions and 5 deletions

View File

@ -1,6 +1,6 @@
from typing import Any from typing import Any
from sqlalchemy import Column, Integer, String, ForeignKey from sqlalchemy import Column, Integer, String, ForeignKey, DateTime
from sqlalchemy.orm import relationship from sqlalchemy.orm import relationship
from pilgrim.models.photo_in_entry import photo_entry_association from pilgrim.models.photo_in_entry import photo_entry_association
@ -12,7 +12,7 @@ class Entry(Base):
id = Column(Integer, primary_key=True) id = Column(Integer, primary_key=True)
title = Column(String) title = Column(String)
text = Column(String) text = Column(String)
date = Column(String) date = Column(DateTime)
photos = relationship( photos = relationship(
"Photo", "Photo",
secondary=photo_entry_association, secondary=photo_entry_association,

View File

@ -1,4 +1,6 @@
from datetime import datetime
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
@ -7,7 +9,7 @@ class EntryService:
def __init__(self,session): def __init__(self,session):
self.session = session self.session = session
def create(self, travel_diary_id:int, title: str, text: str, date: str, ): def create(self, travel_diary_id:int, title: str, text: str, date: datetime, ):
travel_diary = self.session.query(TravelDiary).filter(TravelDiary.id == travel_diary_id).first() travel_diary = self.session.query(TravelDiary).filter(TravelDiary.id == travel_diary_id).first()
if not travel_diary: if not travel_diary:
return None return None

View File

@ -375,8 +375,8 @@ class EditEntryScreen(Screen):
service_manager = self.app.service_manager service_manager = self.app.service_manager
entry_service = service_manager.get_entry_service() entry_service = service_manager.get_entry_service()
# Get current date # Get current date as datetime object
current_date = datetime.now().strftime("%d/%m/%Y") current_date = datetime.now()
new_entry = entry_service.create( new_entry = entry_service.create(
travel_diary_id=self.diary_id, travel_diary_id=self.diary_id,