Affero GPL


  • Perpetual license (does not expire)
  • Unlimited projects
  • Can distribute code and binary products
  • Conditional commercial use
  • Attribution required
Free Read License

Personal License


  • Perpetual license (does not expire)
  • 1 site, unlimited servers
  • No distribution (hosted use only)
  • Commercial use allowed
$24.99 Read License

Developer License


  • Perpetual license (does not expire)
  • Unlimited projects
  • Can distribute code and binary products
  • Commercial use allowed
$249.99 Read License

14 Day money-back guarantee

Full refund within 14 days of purchase date.

You need to log-in or create an account
  • Create an account
  • Log-in

Please use your real name.

Activation link will be sent to this address.

Minimum 8 characters

Enter your password again

Clicking this button confirms you read and agreed to the terms of use and privacy policy.

  • Released: Jan 28, 2011
    Last Update: Jan 27, 2011
  • Language: Python
    Framework: Django
  • Category: Database

django-qbe

django-qbe
Developed by Javier de la Rosa, Released Jan 28, 2011

Admin tool in order to get custom reports. The objective of django-qbe is provide a assited and interactive way of making complex queries with no technical knowledge (or minimal) to get custom reports from the objects of Django models. Based on QBE proposal from IBM®, django-qbe is intended to remove the limitations of Django QuerySets objects and to use the whole expresive power of the subjacent SQL.

Python

Tags: admin , contest2011 , database , django

  • View and autodiscover relations among the models in a visual way (ForeignKey fields are green andManyToMany ones are red).
  • Tabular creation of queries with fields to show, criterias, lookups and order (only AND conditions by now).
  • Auto adition of right fields when ForeignKey or ManyToMany fields are selected.
  • No models in the project, so you can add django-qbe whenever you want with no syncdb.
  • Pagination of results.
  • Bookmarklet to save and share the queries.
  • Export results to .csv, .odt and .xls, but it's extensible by the user.
  • Access restricted to users through a customizable function.
  • Links to admin views (if available) in the results objects.

Django implementantion for Query By Example (QBE) on Github

Back to top

Installation

Using the Python Package Index (PyPI_) and easy_install script:

 

$ easy_install django-qbe

Or through pip:

$ pip install django-qbe

But you also can download the django_qbe directory using git:

$ git clone git://github.com/versae/qbe.git
$ cp -r qbe/django_qbe /path/to/your/project

Adding to the project settings:

INSTALLED_APPS = (
    # [...] django builtins applications
    'django_qbe',
    # [...] Any other application
)

And adding the urlconf in your project urls.py:

# qbe
url(r'^qbe/', include('django_qbe.urls')),

You must not forgive link or copy the django_qbe/media/django_qbe directory in your project media directory:

$ ln -s django_qbe/media/django_qbe /path/to/your/project/media/

That's all. Then you can access to http://host:port/qbe However, you can add a link from your admin page changing the admin index template fo your AdminSite:

class AdminSite(admin.AdminSite):
    index_template = "qbe_index.html"

Or adding in your custom admin index template the next javascript:

Back to top

Download

Just typing like a regular pip dependency installation:  

    $ pip install django-qbe




You can download this project in either [zip][1] or [tar][2] formats.

You can also clone the project with Git by running:

$ git clone git://github.com/versae/qbe
Back to top

Settings

The next lines show de available settings and its default values.

Enable autocompletion tool (work in progress, not enabled yet):

QBE_AUTOCOMPLETE = True

Enable an Exhibit faceted navigation for results (not yet implemented):

QBE_EXHIBIT = False

Admin module name to add admin urls in results:

QBE_ADMIN = "admin"

Function to control to users with access to QBE:

QBE_ACCESS_FOR = lambda user: user.is_staff

Path to QBE formats export file, in order to add custom export formats:

QBE_FORMATS_EXPORT = "qbe_formats"
Back to top

License

Free software distributted under the GNU Affero General Public License for Open Source Projects.

Contact to author for commercial usage.

Back to top

Authors

Javier de la Rosa (@versae)
With the funding of Cultureplex, the Cultural Complexity Lab @ UWO.

Back to top

Video

User Reviews

No reviews have been submitted yet.
Read all 1 comments »

Questions & Comments


Or enter your name and Email
  • Jukka Honkola 10 months ago
    Is the Affero GPL licence here meant to be GPL or LGPL? Meaning, if I use that, am I required to share on request all my django code (the "GPL" case) or am I only required to publish modifications to django-qbe (the "LGPL" case). The pricing page confusingly mentions Affero GPL in text, and LGPL in mouse hover bubble.
You must be logged-in to vote. Log-in to your account or register now.