Softwarefabrica Django CRUD

About this document

This document provides an overview of what Softwarefabrica Django CRUD is.

Contents

See also the documentation index.

What is this?

This library provides flexible and advanced CRUD generic views for applications developed with the Django web framework.

By default the generic views make use of the advanced form classes made available through softwarefabrica.django.forms, thus automatically using the optional template-based form rendering, the advanced widgets for date, time, foreign-key and many-to-many fields, etc. However it's easy to switch back to Django default forms and widgets if desired.

Generic views are a backward-compatible drop-in replacement for those offered by Django, it's just a matter of importing them from softwarefabrica.django.crud.crud instead of from django.views.generic.

In addition, a more flexible set of Object Oriented views is available. Just subclass them as you like, instantiate them and put the instances inside your URLconf, as if they were regular function views. In the majority of cases you won't even need to subclass them, since you can go a long way just by passing the proper parameters to the constructor.

In fact, Object oriented views are so powerful and flexible that plain functional views are actually instances. They are implemented by the library in this way:

create_object = CreateObjectView()
update_object = UpdateObjectView()
delete_object = DeleteObjectView()
object_detail = DetailObjectView()
object_list   = ListObjectView()

Feedback

Your help and feedback is precious. Suggestions and contributions are very much appreciated. See below on how you can contribute.

If you want to actively collaborate and provide code, documentation, tests or bug fixes, please feel free to create a new Bazaar branch in Launchpad, and tell us about it! See the collaboration section for more information.

And don't forget to check also our other Django applications, softwarefabrica.django.utils, softwarefabrica.django.forms, and softwarefabrica.django.wiki.

Pre-requisites and installation

See the installation guide document.

How can I contribute?

As said, your help is precious. We'll warmly appreciate any help you'll want to give. Just using this library is a reward for us, but if you want to become more actively involved, you are welcome!

The project has a development home page at LaunchPad:

https://launchpad.net/sf-django-crud

There you can file bugs, suggest enhancements, follow development or ask to become an active team member.

You can checkout the development branch using Bazaar:

bzr branch lp:sf-django-crud

We'll appreciate very much if you'll want to contribute back any changes. Just register your branch with LaunchPad and tell us!

Source code can also be browsed online.

Contacts

It's possible to contact the author by e-mail at the following addresses:

m.pantaleoni at softwarefabrica.org

panta at elasticworld.org

marco.pantaleoni at gmail.com

LICENSE

This software is covered by the GNU General Public License version 2. If you want to use this software in a closed source application, you need to buy a commercial license from the author.

This open source version is:

Copyright (C) 2007-2008 Marco Pantaleoni. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.