def create(request): user = users.get_current_user() if not user: HttpResponseRedirect('/reader/') username = request.POST["username"] if not re.match(r"^\w{4,16}$", username): return index( request, "Username can contain only letters and digits, 4-16 characters long" ) r = Reader.byCurrentUser() if not r: r = Reader() r.name = request.POST["name"] r.username = username r.email = user.email() r.id = user.user_id() r.put() return HttpResponseRedirect('/reader')
def post(self): user = users.get_current_user() current_reader = self.find_current_reader() if current_reader is None: name = self.post_str('name') reader = Reader.all(keys_only=True).filter('name', name).get() if reader is not None: raise HTTPBadRequest("I'm afraid that name's already taken.") current_reader = Reader(emails=[user.email()], name=name) current_reader.put() self.add_flash("Account created successfully.") self.return_see_other('/') else: self.add_flash("You've already got an account!") self.return_return_see_other('/')