Skip to content

bmihelac/django-cruds-mixins

Repository files navigation

django-cruds-mixins

image

image

image

EXPRERIMENTAL SOFTWARE! Do not use!

django-cruds-mixins integrates several libraries to enable easy, fast and predicatable creation of admin panels and applications.

Features

  • list, create, update, detail, delete views for your models
  • customizable tables with orderable columns, pagination and automatic links for ForeignKey fields, easily customizable with django-tables2
  • search fiters based on model fields with django-filter
  • permissions creation and integration with django-rules
  • advanced forms with django-crispy-forms
  • selections and bulk actions
  • utils for creating URLconfs, permissions, filtersets, tables

Documentation

The full documentation is at https://django-cruds-mixins.readthedocs.io.

Quickstart

Install django-cruds-mixins:

pip install django-cruds-mixins

Add django-cruds-mixin and related apps to your `INSTALLED_APPS`:

INSTALLED_APPS = (
    ...
    'rules.apps.AutodiscoverRulesConfig',
    'crispy_forms',
    'django_tables2',
    'cruds',
    'cruds_mixins',
    ...
)

Add the django-rules authentication backend for using permissions.

AUTHENTICATION_BACKENDS = (
    'rules.permissions.ObjectPermissionBackend',
    'django.contrib.auth.backends.ModelBackend',
)

Add django-cruds-mixins's URL patterns:

from cruds_mixins import urls as cruds_mixins_urls


urlpatterns = [
    ...
    url(r'^', include(cruds_mixins_urls)),
    ...
]

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate
(myenv) $ pip install tox
(myenv) $ tox

Credits

Tools used in rendering this package: