Skip to main content

django-cruds is simple drop-in django app that creates CRUD for faster prototyping.

Project description

https://travis-ci.org/bmihelac/django-cruds.png?branch=master https://coveralls.io/repos/bmihelac/django-cruds/badge.png?branch=master https://img.shields.io/pypi/v/django-cruds.svg

django-cruds is simple drop-in django app that creates CRUD (Create, read, update and delete) views for existing models and apps.

django-cruds goal is to make prototyping faster.

Documentation

To add CRUD for whole app, add this to urls.py:

from cruds.urls import crud_for_app
urlpatterns += crud_for_app('testapp')

This will create following urls and appropriate views (assuming there is a application named testapp with model Author:

URL

name

/testapp/author/

testapp_author_list

/testapp/author/new/

testapp_author_create

/testapp/author/(?P<pk>d+)/

testapp_author_detail

/testapp/author/(?P<pk>d+)/edit/

testapp_author_update

/testapp/author/(?P<pk>d+)/remove/

testapp_author_delete

It is also possible to add CRUD for one model:

from django.db.models.loading import get_model
from cruds.urls import crud_for_model
urlpatterns += crud_for_model(get_model('testapp', 'Author'))

crud_fields templatetag displays fields for an object:

{% load crud_tags %}

<table class="table">
  <tbody>
    {% crud_fields object "name, description" %}
  </tbody>
</table>

Customizable CRUD url patterns crud_urls:

urlpatterns += crud_urls(
    Author,
    list_view=MyAuthorListView.as_view(),
    activate=ActivateAuthorView.as_view(),
)

Use cruds.util.crud_url shortcut function to quickly get url for instance for given action:

crud_url(author, 'update')

Is same as:

reverse('testapp_author_update', kwargs={'pk': author.pk})

cruds.util.crud_url accepts Model class as well for list actions, ie:

crud_url(Author, ‘list’) crud_url(Author, ‘create’)

cruds.util.crud_permission_name returns permission name using Django naming convention, ie: testapp.change_author.

Templates

django-cruds views will append CRUD template name to a list of default candidate template names for given action.

CRUD Templates are:

cruds/create.html
cruds/delete.html
cruds/detail.html
cruds/list.html
cruds/update.html

Quickstart

Install django-cruds:

pip install django-cruds

Then use it in a project, add cruds to INSTALLED_APPS.

Requirements

  • Django>=3.2<=4.0

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

django_cruds-3.0.0.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

django_cruds-3.0.0-py2.py3-none-any.whl (11.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django_cruds-3.0.0.tar.gz.

File metadata

  • Download URL: django_cruds-3.0.0.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.4

File hashes

Hashes for django_cruds-3.0.0.tar.gz
Algorithm Hash digest
SHA256 9df7d093566c15c6e5c0992ae75cd628fd741251dac4fd672a10f12e12f24dd7
MD5 20623114fb4fb438354ff450e67385ca
BLAKE2b-256 6baed3eca8195cea6494a493946097537a6958ac5030ba5d6df86c78fd96511a

See more details on using hashes here.

File details

Details for the file django_cruds-3.0.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_cruds-3.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f46cb61ad2ee1bb90be274868056d376ee237f179b6537d6c8f4a17c3f426e37
MD5 ac325f5668a5beab6930c1cf9d13dbd4
BLAKE2b-256 e3a8fbcb4345f10697c504e07e3af9287953830ea4dad3932abe0950144d3226

See more details on using hashes here.

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