Flask-REST-Controller is added Class-Based-View(Controller) extension on Flask
Project description
Flask-REST-Controller is added Class-Based-View(Controller) extension on Flask
Features
Follow the RESTful design
provide of prepare authentication and request validation
other class based view library is not provided of validation
uniform routing management
The existing functional view is difficult to manage. Definition routing Scattered
JSON Response Validation with JSON Schema
It would be useful for creating an API :)
Installation
$ pip install flask-rest-controller
Usage
from flask import Flask
from flask_rest_controller import Controller, set_routing
app = Flask(__name__)
app.secret_key = 'Í| èg<Î|ÇæãhÖúÈi|î°'
class JsonController(Controller):
schema = {
'GET': {
'type': 'array',
'properties': {
'id': {
'type': 'string'
}
}
},
'POST': {
'type': 'object',
'properties': {
'result': {
'type': 'string'
},
'code': {
'type': 'integer'
}
}
}
}
def get(self):
return self.render_json(["Hello World"])
def post(self):
return self.render_json({'result': "ok", 'code': 200})
ROUTING = [
("/", "app.JsonController", "json_controller"),
]
set_routing(app, ROUTING)
if __name__ == "__main__":
app.run(debug=True)
Just save it as app.py and try
$ python app.py
Now head over to http://127.0.0.1:5000/, and you should see your hello world of json string
You should see a post request result, try this command
$ curl --request POST http://127.0.0.1:5000
You should see that you json in the post method
see https://github.com/teitei-tk/Flask-REST-Controller/tree/master/example For other examples
Dependencies
Python2.6 later
jsonschema
Contribute
Fork it
Create your feature branch (git checkout -b your-new-feature)
Commit your changes (git commit -am 'Added some feature')
Push to the branch (git push origin your-new-feature)
Create a new Pull Request
LICENSE
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
Hashes for Flask-REST-Controller-1.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47db8ba9dc8c471ddcaaf71af5608e651bbfd15f70756854d8c314b7d307a705 |
|
MD5 | 954d76b5643346a95c5c583db8668013 |
|
BLAKE2b-256 | 76b8268e43806789aaaa42dea9c3555cb48d96cec7d36e1acbaeeaad8b9c16a1 |