Skip to main content

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 model classes, see the Mongoengine documentation
    model_class = Article
    template_name = 'article_detail.html'

app.add_url_rule(
    '/articles/<category>/<slug>/',
    view_func=ArticleView.as_view('article')
)

Project details


Download files

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

Files for Flask-Views, version 0.2
Filename, size File type Python version Upload date Hashes
Filename, size Flask-Views-0.2.tar.gz (7.0 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page