def get(self): enforce_key(self) todos = [t.to_dict() for t in ToDo.all().order('-creation_time')] self.response.headers['Content-Type'] = "application/json" self.response.headers['Content-Disposition'] = ( "attachment; filename=todos.json") self.response.out.write(json.dumps(todos))
def post(self): enforce_key(self) rawEntries = self.request.get("entries") entries = json.loads(rawEntries) for e in Entry.all(): e.delete() for e in entries: newEntry = Entry() newEntry.from_json(e) newEntry.put() rawTodos = self.request.get("todos") todos = json.loads(rawTodos) for t in ToDo.all(): t.delete() for t in todos: newToDo = ToDo() newToDo.from_json(t) newToDo.put() self.response.out.write("Backup successfuly restored.")
def get(self): todos = defaultdict(list) for t in ToDo.all().filter('done_time =', None).order('-creation_time'): todos[t.category].append(t) for t in ToDo.all().filter('done_time >', datetime.datetime.now() - datetime.timedelta(days=7)): todos[t.category].append(t) body_text = "" for category, items in todos.iteritems(): body_text += "<h2>%s</h2>\n<ul class='todo'>" % category for t in items: if t.done_time: body_text += "\t<li class='done'>%s</li>\n" % t.content else: body_text += "\t<a href='/todo/finish/%s'><li>%s</li></a>\n" % ( t.key(), t.content) body_text += "</ul>" self.response.out.write(indexTemplate.render({ 'title': 'To-Do', 'body': body_text, 'active_page': 'todo' }))