Flask-Views =========== *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 ~~~~~~~~~~~~ .. code-block:: python 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 ~~~~~~~~~~~~ .. code-block:: python 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///', view_func=ArticleView.as_view('article') ) Views ----- .. toctree:: :maxdepth: 5 views/types views/base views/edit views/json views/db/index Additional ---------- .. toctree:: :maxdepth: 2 changes