def create(self): note_dict = {} for param in request.params: note_dict[param] = request.params[param] note_dict["author"] = session["user"]["id"] new_note = Note(**note_dict) Session.add(new_note) Session.commit() return redirect("/tasks/show/%s" % note_dict["task"])
def create(self): tasklist_args = { "name": request.params["tasklist_name"], "project_id": request.params["project_id"] } tasklist = TaskList(**tasklist_args) Session.add(tasklist) Session.commit() return redirect("/projects/show/%s" % tasklist.project.id)
def edit(self, id=None): if id is not None: project = Session.query(Project).filter_by(id=id).first() if project is None: abort(404) else: return redirect("/projects/new") edit_form = project_form.bind(project, data=request.POST or None) if request.POST and edit_form.validate(): edit_form.sync() # NOTE id is probably never none, consider removing if id is None: Session.add(project) Session.commit() redirect("/projects/show/%s" % id) context = { "project": project, "project_form": edit_form.render(), } return render("projects/edit.html", context)
def create(self): create_form = project_form.bind(Project, data=request.params) if request.POST and create_form.validate(): project_args = { "name": create_form.name.value, "description": create_form.description.value, "author_id": 1, # TODO set this based on logged-in user } project = Project(**project_args) tasklist_args = { "name": "Tasks", "project_id": project.id } project.tasklists = [TaskList(**tasklist_args)] Session.add(project) Session.commit() return redirect("/projects/show/%s" % project.id) return render("/projects/new.html", {"project_form": create_form.render()})
def edit(self, id): if id is not None: user = Session.query(User).filter_by(id = id).first() if user is None: #TODO something better than 404 abort(404) edit_form = user_form.bind(user, data=request.POST or None) if request.POST and edit_form.validate(): edit_form.sync() # NOTE id is probably never none, consider removing if id is None: Session.add(user) Session.commit() #redirect("/projects/show/%s" % id) session['flash'] = 'User updated' return render('users/edit.html', { 'user': user, 'user_form': edit_form.render() }) else: return redirect('/users/new')
def create(self): password = request.POST.pop('password') password_conf = request.POST.pop('password2') create_form = user_form.bind(User, data=request.POST) if request.POST and create_form.validate(): user_dict = { 'firstname': create_form.firstname.value, 'lastname': create_form.lastname.value, 'username': create_form.username.value.strip(), 'email': create_form.email.value.strip(), } if password == password_conf: user_dict['password'] = password user = User(**user_dict) Session.add(user) Session.commit() session['user'] = {'id': user.id, 'name': '%s %s' % (user.firstname, user.lastname)} session.save() return redirect('/projects') else: session['flash'] = 'Passwords did not match' session.save() return render('users/new.html', {'user_form': create_form.render()})
def create(self): create_form = task_form.bind(Task, data=request.params) if request.POST and create_form.validate(): task_args = { "task": create_form.task.value, "tasklist_id": request.params["tasklist_id"], #create_form.tasklist_id.value, "project_id": request.params["project_id"], #create_form.project_id.value, "user_id": 1, # TODO fix this "assigned_to": create_form.assigned_to.value, "deadline": create_form.deadline.value } task = Task(**task_args) Session.add(task) Session.commit() return redirect("/projects/show/%s" % task_args["project_id"]) context = { } return render("tasks/new.html", { "task_form": create_form.render(), "tasklist_id": request.params["tasklist"], "project_id": request.params["project"], })