def reset_password(code, password): redis = RedisPool(settings.storage_socket) key = 'reset-password:%s' % code print key id = redis.get(key) if not id: raise UserNotFound try: user = User(int(id)) except ValueError: raise UserNotFound user.set_password(password) user.save() redis.delete(key) return user
def save(self): is_new = not self.id if is_new and not self._url: raise InvalidFeedUrl("Cannot save feed without URL") if not self.login: self.login = self._generate_login() User.save(self) if is_new: db.perform("INSERT INTO users.feeds (id, url) VALUES (%s, %s);", [self.id, self._url]) self.fetch() for p in self.posts(): p.save() self.update_task()