def post(self, item_id): """Accepts a URL argument and saves it to the database """ item_data = self._load_item(self.current_user.id, item_id) item = ListItem(**item_data) title = self.get_argument('title') url = self.get_argument('url') tags = self.get_argument('tags') # TODO The URLField should probably handle this somehow if not url.startswith('http'): url = 'http://%s' % (url) tag_list = tags.split(',') item.updated_at = self.current_time item.title = title item.url = url item.tags = tag_list try: item.validate() except Exception, e: logging.error('Item validatiom failed') logging.error(e) return self.render_error(500)
def post(self, item_id): """Accepts a URL argument and saves it to the database """ item_data = self._load_item(self.current_user.id, item_id) item = ListItem(**item_data) title = self.get_argument("title") url = self.get_argument("url") tags = self.get_argument("tags") # TODO The URLField should probably handle this somehow if not url.startswith("http"): url = "http://%s" % (url) tag_list = tags.split(",") item.updated_at = self.current_time item.title = title item.url = url item.tags = tag_list try: item.validate() except Exception, e: logging.error("Item validatiom failed") logging.error(e) return self.render_error(500)
def post(self): user = users.get_current_user() # We require a valid user if not user: self.redirect(users.create_login_url(self.request.uri)) list_item = ListItem() list_item.author = user list_item.title = self.request.get('title') list_item.details = self.request.get('details') # If we were able to save, get rid of the template cache if list_item.put(): memcache_key = user.nickname() + '_list_items' memcache.delete(memcache_key) self.redirect('/view')