flaskfilemanager

module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 27, 2019 License: Apache-2.0

README

Flask File Manager

This project creates an easy to integrate package with a Flask blueprint to add a RichFilemanager to your project.

Initialisation

To use this in your project basically do the following:

from flask import Flask
import flaskfilemanager

# Create the webapp
app = Flask(__name__)

# This is where the path for the uploads is defined
app.config['FLASKFILEMANAGER_FILE_PATH'] = 'tmp-webapp-uploads'

# You'll obviously do some more Flask stuff here!

# Initialise the filemanager
flaskfilemanager.init(app)

This will initialise the filemanager and add the blueprint to your project.

Access Control

To set an access control function to the filemanager, for example to prevent people who aren't logged in from accessing it, do the following:

def my_access_control_function():
	"""
	:return: True if the user is allowed to access the filemanager, otherwise False
	"""
	# You can do whatever permission check you need here
	return 'logged_in' in session and session['role'] == 'admin'

# Then when you init the filemanager do:
flaskfilemanager.init(app, access_control_function=my_access_control_function)

This will result in a 404 being displayed for all users who don't have the correct session values.

Integration into your Flask app

To generate links to the filemanager:

filemanager_link = url_for('flaskfilemanager.index')
file_download_link = url_for('flaskfilemanager.userfile', filename='/my_folder/uploaded_file.txt')

TODO: ckeditor integration

This is easy. Ask me if you need this and I'll write it up

More info coming soon.

Directories

Path Synopsis
flaskfilemanager

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL