Ich erstelle eine App, die an jedem beliebigen Tag nur eine Entität pro Tag erstellen kann. Hier ist das Modell:Ermitteln, ob eine Entität 'heute' erstellt wird
class MyModel(ndb.Model):
created = ndb.DateTimeProperty(auto_now_add=True)
Da nur eine Einheit darf pro Tag erstellt werden, wir müssen die MyModel.created Eigenschaft auf das heutige Datum vergleichen:
import datetime
class CreateEntity(webapp2.RequestHandler):
def get(self):
today = datetime.datetime.today()
my_model = MyModel.query(MyModel.created == today).get()
if my_model:
# print("Today's entity already exists")
else:
# create today's new entity
Das Problem ist, dass ich kann die beiden Daten nicht vergleichen. Wie kann ich prüfen, ob eine Entität bereits "heute" erstellt wurde?
Warum können Sie nicht die beiden Daten wie folgt vergleichen? Erhalten Sie eine Fehlermeldung? –
@TammoHeeren, ein neu erstelltes Datenzeitobjekt enthält jeden Sekunde einen anderen Sekundenwert, so dass der Vergleich fast immer den Wert false zurückgibt. Um das zu umgehen, benutzte ich die 'DateProperty' anstelle der' DateTimeProperty' (siehe meine eigene Antwort unten). – puoyaahhh