def post(self): form = EditPage() if request.form.get('templates', None) is not None: form.templates.data = int(form.templates.data) if form.validate_on_submit(): page = Page( slug=form.slug.data, title=form.title.data, description=form.description.data, content=form.content.data, login_required=form.login_required.data, show_in_nav=form.show_in_nav.data, template_id=form.templates.data, ) # Fetch level from parent page.level = 0 if request.form.get('parent_slug', None): parent = get_object_or_404( Page, Page.slug == request.form.get('parent_slug')) page.parent_id = parent.id page.level = parent.level + 1 db.session.add(page) db.session.commit() return redirect(url_for('admin.edit_page', slug=page.slug)) return render_template('page/admin_page.html', form=form)
def post(self, slug): page = get_object_or_404(Page, Page.slug == slug) form = EditPage(page) add_widget_form = AddWidgetToPageForm() if form.validate_on_submit(): page.slug = request.form.get('slug') page.title = request.form.get('title') page.description = request.form.get('description') page.content = request.form.get('content') page.login_required = 'login_required' in request.form page.show_in_nav = 'show_in_nav' in request.form page.template_id = request.form.get('templates') page.header_image = request.form.get('header_image') db.session.commit() return redirect(url_for('admin.edit_page', slug=page.slug)) return render_template('page/admin_page.html', form=form, add_widget_form=add_widget_form)