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 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')
)

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-Views-0.2.1.tar.gz (24.9 kB view hashes)

Uploaded Source

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