Example #1
0
 def get(self):
     now = datetime.now()
     delta = timedelta(days=7)
     then = now - delta
     ndb.delete_multi(
         Data.query(Data.time < then).fetch(keys_only=True)
     )
     refresh()
     return {}
Example #2
0
def refresh():
    then = datetime.now() - timedelta(days=3)
    ret = []
    for d in Data.query(Data.time > then):
        ret.append([d.time_str, d.value, d.temperature])
    ret = remove_duplicates(ret)

    ret = sorted(ret, key = lambda v: v[0], reverse=True)

    memcache.set(key="timeseries", value=json.dumps(ret))
    return ret
Example #3
0
def makedata():
    ndb.delete_multi(
        Data.query().fetch(keys_only=True)
    )
    now = datetime.now()
    for i in xrange(24*4):
        t = now - timedelta(seconds=i*15*60)
        v = 149 - random.randint(0,50)
        temp = random.randint(-10, 20)
        # GAE barfs if tzinfo defined
        Data(time=t.replace(tzinfo=None), value=v, temperature = temp,
            time_str=t.strftime("%Y-%m-%dT%H:%M:%SZ")
        ).put()
Example #4
0
def delete_year_zip(year, zip):
    logging.debug('deleting year zip')
    data_keys = Data.query().filter(Data.year == year).filter(Data.zip == zip).fetch(keys_only=True)
    logging.debug('delting {}'.format(len(data_keys)))
    ndb.delete_multi(data_keys)
Example #5
0
def get_year_zip(year, zip):
    logging.info("Getting all comments!")
    datas = Data.query().filter(Data.year == year).filter(Data.zip == zip).fetch()
    to_return = [data.to_json for data in datas]
    response.content_type = 'application/json'
    return json.dumps(to_return)