Skip to main content

Straightforward file-based routing extension for Flask. Introduces the concepts of pages to Flask.

Project description

FlaskFSRouter

Straightforward file-based routing extension for Flask. Introduces the concepts of pages to Flask.

Getting Started

pip install flask_fs_router


Initialize the extension.
from flask import Flask
from flask_fs_router import FlaskFSRouter

app = Flask(__name__)
FlaskFSRouter(app)

Pages are python files with a default function defined. These pages are stored in the /pages directory of your project, it is automatically available as a route based on its filename.

Create an example index route.

pages/index.py

def default():
    return "Home page"

Conventions

Index Pages

The index file of any folder is the name of that folder.

pages/ecommerce/index.py              ->         oursite.com/ecommerce     |  GET
pages/products/index.py               ->         oursite.com/products      |  GET

Static Routes



pages/index.py              ->        oursite.com/          |  GET
pages/about.py              ->        oursite.com/about     |  GET
pages/about/index.py        ->        oursite.com/about     |  GET
pages/about/me.py           ->        oursite.com/about/me  |  GET
pages/posts/1.py            ->        oursite.com/posts/1   |  GET
pages/posts/[post_id].py    ->        oursite.com/posts/<post_id>  |  GET

Request Methods

By default, pages map to GET requests. To change this behavior, define request methods within the file name using parentheses.

Example: Request methods

pages/posts/create_post(post).py            ->        oursite.com/posts/create-post  |  POST

Github Page

https://github.com/JarriqTheTechie/flask_fs_router

Contributing

We love the idea of a community. We'll be putting together a contribution guide in the near future.

License

flask_fs_router is available as open source under the terms of the MIT License http://opensource.org/licenses/MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flask-fs-router-1.1.2.tar.gz (4.9 kB view hashes)

Uploaded Source

Built Distribution

flask_fs_router-1.1.2-py3-none-any.whl (4.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page