def cms_admin_images(self): self.meta_(title="Images") if request.method == "POST": id = request.form.get("id", None) action = request.form.get("action") description = request.form.get("description") if id: image = PostModel.UploadObject.get(id) if image: if action == "delete": image.delete() obj = storage.get(image.name) if obj: obj.delete() flash_success("Image deleted successfully!") else: image.update(description=description) flash_success("Image updated successfully!") else: abort(404, "No image ID provided") return redirect(url_for("CmsAdmin:images")) else: page = request.args.get("page", 1) per_page = self.config_("PAGINATION_PER_PAGE", 25) images = PostModel.UploadObject.all()\ .filter(PostModel.UploadObject.type == "IMAGE")\ .order_by(PostModel.UploadObject.name.asc()) images = images.paginate(page=page, per_page=per_page) return self.render_(images=images, view_template_=template_page % "images")
def upload(self): self.meta_(title="Upload Demo") if request.method == "POST": try: _file = request.files.get('file') if _file: my_object = storage.upload(_file, prefix="demo/", public=True, allowed_extensions=["gif", "jpg", "jpeg", "png"]) if my_object: return redirect(url_for("Account:upload", object_name=my_object.name)) except Exception as e: flash_error(e.message) return redirect(url_for("Account:upload")) my_object = None object_name = request.args.get("object_name") if object_name: my_object = storage.get(object_name=object_name) return dict(my_object=my_object)