def update_av(id, name): """update's av's name if key found, else creates entity. only use request header data. POST and PUT data are not trustworthy.""" av = Av.get_by_key_name("Av:" + id) #optimize if av is None: #Av(key_name="Av:"+id,id = id, name = name).put() query = Av.gql("WHERE id = :1", id) count = query.count() if count == 0: #doesn't exist. save Av(key_name="Av:" + id, id=id, name=name).put() elif count == 1: #already exists. just update the name av = query.get() if (av.name != name): av.name = name av.put() else: #there's more than one record. delete them all and just save one #this should never happen logging.error("%s key %s had more than one record in Av.", name, id) for record in query: record.delete() av = Av(key_name="Av:" + id, id=id, name=name) av.put() elif (av.name != name): av.name = name av.put()
def update_av(id, name): """update's av's name if key found, else creates entity. only use request header data. POST and PUT data are not trustworthy.""" av = Av.get_by_key_name("Av:"+id)#optimize if av is None: #Av(key_name="Av:"+id,id = id, name = name).put() query = Av.gql("WHERE id = :1", id) count = query.count() if count == 0:#doesn't exist. save Av(key_name="Av:"+id,id = id, name = name).put() elif count == 1:#already exists. just update the name av = query.get() if (av.name != name): av.name = name av.put() else:#there's more than one record. delete them all and just save one #this should never happen logging.error("%s key %s had more than one record in Av.", name, id) for record in query: record.delete() av = Av(key_name="Av:"+id, id = id, name = name) av.put() elif (av.name != name): av.name = name av.put()