class EditTopicView(MethodView): def prepare(self, id): self.topic = Topic.query.get_or_404(id) self.form = EditTopicForm(obj=self.topic) def get(self): return render_template("edit-topic.html", **vars(self)) def post(self): if not self.form.validate(): return self.get() edit_topic(self.topic, name=self.form.name.data, related_topics=self.form.related_topics.data, description=self.form.description.data) return redirect(url_for("note.topic", id=self.topic.id))
class NewTopicView(MethodView): """The view to create a new topic.""" def prepare(self): self.form = EditTopicForm() def get(self): return render_template("edit-topic.html", **vars(self)) def post(self): if not self.form.validate(): return self.get() topic = Topic() edit_topic(topic, name=self.form.name.data, related_topics=self.form.related_topics.data, description=self.form.description.data) return redirect(url_for("note.topic", id=topic.id))
def prepare(self, id): self.topic = Topic.query.get_or_404(id) self.form = EditTopicForm(obj=self.topic)
def prepare(self): self.form = EditTopicForm()