Skip to main content

A Flask-based framework for easy REST API projects building.

Project description

Flask-RESTBuilder

Flask-RESTBuilder is a mircroframework based on Flask and some Flask’s extensions. It’s aimed to make it easier to build a RESTful API project in Flask.

Installing

Install and update by pip:

pip install flask_restbuilder

Example

About Project

Use command flask_restbuilder start to create a project:

path/to/project: flask_restbuilder start
What is your project's name? [myproject]: myproject
Where you want to create?(empty to current dir) [path/to/project]:
Your project's modules(use whitespace to split) [mymodule]: app1 app2
Need swagger support?(y/n) [y]:

Follow the guidance and finish the questions below, you will get a directory (The project directory is based on src mode):

myproject
├─ .gitignore
├─ CHANGES.rst
├─ README.rst
└─ src
    └─ myproject
        ├─ config.py
        ├─ manage.py
        ├─ app
        │   ├─ __init__.py
        │   ├─ api
        │   │   ├─ app1.py
        │   │   ├─ app2.py
        │   │   └─ __init__.py
        │   ├─ app1
        │   │   ├─ models.py
        │   │   ├─ routes.py
        │   │   └─ __init__.py
        │   └─ app2
        │       ├─ models.py
        │       ├─ routes.py
        │       └─ __init__.py
        └─ extension
            └─ mysql.py

About API

Create your API views like:

from flask_restbuilder import RESTful

class MyAPI(RESTful):

    def __init__(self):
        self.parser.add_argument('arg')
        self.parse_arguments()

    def get(self):
        result = self.init_response(data=self.args)
        return result

self.parser is an instance of flask_restful.reqparse.RequestParser, use add_argument the same way. Use self.parse_arguments to make self.args = self.parser.parse_args()

About Error

There some basic errors in flask_restbuilder.exceptions. Customize your exceptions from flask_restbuilder.BaseError:

from flask_restbuilder import BaseError

class MyError(BaseError):
    code = 12345
    message = 'my error message'

About Database

Flask_SQLAlchemy is equipped. You can see in extension/mysql.py and freely edit any basic options.

Thanks to

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-RESTBuilder-0.1.0.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

Flask_RESTBuilder-0.1.0-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file Flask-RESTBuilder-0.1.0.tar.gz.

File metadata

  • Download URL: Flask-RESTBuilder-0.1.0.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for Flask-RESTBuilder-0.1.0.tar.gz
Algorithm Hash digest
SHA256 754bb1cc4080611ff6e2dd41d7f692653edd700d752430dbea342ca8927011bd
MD5 50f73f78cbd8f72c722c762706e9b15c
BLAKE2b-256 6a43c600ef47c21c48ad7a788a2c0302469c2567f50957590fb3d25c0e92d33a

See more details on using hashes here.

File details

Details for the file Flask_RESTBuilder-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: Flask_RESTBuilder-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.48.2 CPython/3.8.0

File hashes

Hashes for Flask_RESTBuilder-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9a74e291faf051dd08f812983dc4e92b168bea2d6fd39d5a94da7e2c6e93524a
MD5 1c2ebd61aac2dc109f4ad199c6ae44e8
BLAKE2b-256 0fdbc4ee87e1400d2acc9f895d563708558522e8cb076b96cf53bc9142a9e7e9

See more details on using hashes here.

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