Class based views for Flask
Project description
Flask-Views is a Flask extension which provides a set of class-based views, inspired by the Django class based views.
Currently this package contains a set of views for rendering (template and JSON) responses dispatched by HTTP request method, views for handling (WTForms) form submission and a collection of database views for creating and updating objects (currently MongoDB is supported by using Mongoengine).
Installation
Flask-Views can be installed by executing pip install flask-views. The source is available at: http://github.com/brocaar/flask-views
Examples
Contact form
from flask_views.edit import FormView
class ContactFormView(FormView):
# For creating forms classes, see the WTForms documentation
form_class = ContactForm
template_name = 'contact_form.html'
def form_valid(self, form):
# Do something with the submitted form data
return super(ContactFormView, self).form_valid(form)
def get_success_url(self):
return url_for('contact.form')
app.add_url_rule(
'/contact/',
view_func=ContactFormView.as_view('contact')
)
Article view
from flask_views.db.mongoengine.detail import DetailView
class ArticleView(DetailView):
get_fields = {
'category': 'category',
'slug': 'slug',
}
# For creating document classes, see the Mongoengine documentation
document_class = Article
template_name = 'article_detail.html'
app.add_url_rule(
'/articles/<category>/<slug>/',
view_func=ArticleView.as_view('article')
)
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file Flask-Views-0.2.1.tar.gz.
File metadata
- Download URL: Flask-Views-0.2.1.tar.gz
- Upload date:
- Size: 24.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4aa75c8fb0cd9c07a30ab288774de710fda1136eb6ff18404b2f72513894d384
|
|
| MD5 |
89fd9c04d6721e8b04c42b999170e74a
|
|
| BLAKE2b-256 |
d868a4b5777e1a808e31605e3abe1221316dc105a2793af17e64793deb992d85
|