def index(self): class AssetsForm(Form): gridfield = GridField( buttons=[], display_cols=["id", "name"], query=FileObject.query, controlled_class=FileObject ) form = AssetsForm() return render_template("assetmanager.html", form=form)
def edit(self, cls, id_): import silverflask.models.models as models _class = getattr(models, cls) do = _class.query.get_or_404(id_) form = do.get_cms_form() form = form() form.process(request.form, obj=do) if form.validate_on_submit(): form.populate_obj(do) db.session.add(do) db.session.commit() # return redirect(url_for(".edit", page_id=do.id)) return render_template("page/edit.html", page_form=form)
def edit_page(self, page_id): page = db.session.query(SiteTree).get(page_id) if not page: abort(404) page_form = page.get_cms_form() page_form = page_form(request.form, obj=page) if page_form.validate_on_submit(): page_form.populate_obj(page) if request.form.get("Publish"): page.mark_as_published() db.session.commit() return render_template("page/edit.html", page=page, page_form=page_form, cms_title=page.name)
def add(self, cls): import silverflask.models.models as models _class = getattr(models, cls) do = _class() relation_id = request.args.get('relation_id', None) if relation_id: do.page_id = int(relation_id) form = do.get_cms_form() form = form() form.process(request.form, obj=do) if form.validate_on_submit(): form.populate_obj(do) db.session.add(do) db.session.commit() # return redirect(url_for(".edit", page_id=do.id)) return render_template("page/edit.html", page_form=form)
def add_page(self, page_type): import silverflask.models.models as models _class = getattr(models, page_type) page = _class() page.name = "New Page" parent_id = request.args.get('parent', None) if parent_id: page.parent_id = int(parent_id) page_form = page.get_cms_form() page_form = page_form() page_form.process(request.form, obj=page) if page_form.validate_on_submit(): page_form.populate_obj(page) db.session.add(page) db.session.commit() return redirect(url_for(".edit_page", page_id=page.id)) return render_template("page/edit.html", page_form=page_form)
def index(self): return render_template("page/index.html")