Flask (web framework)
Developer(s) | Armin Ronacher |
---|---|
Initial release | April 1, 2010 |
Stable release | 0.11 / May 29, 2016[1] |
Written in | Python |
Operating system | Cross-platform |
Type | Web framework |
License | BSD |
Website | <strong%20class= "error"><span%20class="scribunto-error"%20id="mw-scribunto-error-1">Lua%20error%20in%20Module:Wd%20at%20line%20405:%20invalid%20escape%20sequence%20near%20'"^'. http://<strong%20class="error"><span%20class="scribunto-error"%20id="mw-scribunto-error-1">Lua%20error%20in%20Module:Wd%20at%20line%20405:%20invalid%20escape%20sequence%20near%20'"^'.Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value). |
Flask is a micro web framework written in Python and based on the Werkzeug toolkit and Jinja2 template engine. It is BSD licensed.
As of May 2016, the latest stable version of Flask is 0.11.[2] Examples of applications that make use of the Flask framework are Pinterest,[3] LinkedIn,[4] as well as the community web page for Flask itself.[5]
Flask is called a micro framework because it does not presume or force a developer to use a particular tool or library.[6] It has no database abstraction layer, form validation, or any other components where pre-existing third-party libraries provide common functions. However, Flask supports extensions that can add application features as if they were implemented in Flask itself. Extensions exist for object-relational mappers, form validation, upload handling, various open authentication technologies and several common framework related tools. Extensions are updated far more regularly than the core Flask program.[7]
History
Flask was created by Armin Ronacher of Pocoo[8] which is an international group of Python enthusiasts formed in 2004. According to Armin, "It came out of an April Fool's joke but proved popular enough to make into a serious application in its own right."[9][10][11] Flask is based on the Werkzeug WSGI toolkit and Jinja2 template engine, both of them Pocoo projects that were created when Ronacher and Georg Brandl were building a bulletin board system written in Python.[12]
Despite the lack of a major release, Flask has become extremely popular among Python enthusiasts.
Features
- Contains development server and debugger
- Integrated support for unit testing
- RESTful request dispatching
- Uses Jinja2 templating
- Support for secure cookies (client side sessions)
- 100% WSGI 1.0 compliant
- Unicode-based
- Extensive documentation
- Google App Engine compatibility
- Extensions available to enhance features desired
Example
The following code shows a simple web application that prints "Hello World!":
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
See also
References
- ↑ http://flask.pocoo.org/docs/changelog/#version-0-11
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ What challenges has Pinterest encountered with Flask?
- ↑ Rachel Sanders: Developing Flask Extensions - PyCon 2014
- ↑ Community web page for Flask
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
External links
- No URL found. Please specify a URL here or add one to Wikidata.
- Flask documentation
- flask on GitHub
- Flask on PyPI
- Localization for Flask applications