Add last accessed time to Xml model, and update it when getting from the db

This commit is contained in:
Rachel Fenichel
2020-07-28 16:03:11 -07:00
parent bef7ba3087
commit 0d9d590e42

View File

@@ -23,6 +23,7 @@ __author__ = "q.neutron@gmail.com (Quynh Neutron)"
import cgi import cgi
import hashlib import hashlib
from random import randint from random import randint
from datetime import timezone
from google.cloud import ndb from google.cloud import ndb
@@ -30,6 +31,7 @@ class Xml(ndb.Model):
# A row in the database. # A row in the database.
xml_hash = ndb.IntegerProperty() xml_hash = ndb.IntegerProperty()
xml_content = ndb.TextProperty() xml_content = ndb.TextProperty()
last_accessed = ndb.DateTimeProperty(auto_now = true)
def keyGen(): def keyGen():
@@ -72,10 +74,19 @@ def keyToXml(key_provided):
client = ndb.Client() client = ndb.Client()
with client.context(): with client.context():
result = Xml.get_by_id(key_provided) result = Xml.get_by_id(key_provided)
if not result: if not result:
xml = "" xml = ""
else: else:
xml = result.xml_content xml = result.xml_content
# Update row to include last accessed time--because last_accessed is set to
# auto_now, any write updates the time.
with client.context():
row = Xml(id = key_provided,
xml_hash = result.xml_hash,
xml_content = result.xml_content)
row.put();
return xml return xml