Skip to main content

Neapolitan: quick CRUD views for Django.

Project description

PyPI version

I have a Django model:

from django.db import models

class Bookmark(models.Model):
    url = models.URLField(unique=True)
    title = models.CharField(max_length=255)
    note = models.TextField(blank=True)
    favourite = models.BooleanField(default=False)

I want easy CRUD views for it, without it taking all day:

# urls.py
from neapolitan.views import CRUDView
from .models import Bookmark

class BookmarkView(CRUDView):
    model = Bookmark
    fields = ["url", "title", "note"]
    filterset_fields = [
        "favourite",
    ]

urlpatterns = [
    *BookmarkView.get_urls(),
]

Neapolitan’s CRUDView provides the standard list, detail, create, edit, and delete views for a model, as well as the hooks you need to be able to customise any part of that.

Neapolitan provides base templates and re-usable template tags to make getting your model on the page as easy as possible.

Where you take your app after that is up to you. But Neapolitan will get you started.

Let’s go! 🚀

Next stop the docs 🚂

Versioning and Status

Neapolitan uses a two-part CalVer versioning scheme, such as 23.7. The first number is the year. The second is the release number within that year.

This is alpha software. I’m still working out the details of the API, and I’ve only begun the docs.

But: You could just read neapolitan.views.CRUDView and see what it does. Up to you. 😜

Installation

Install with pip:

pip install neapolitan

Add neapolitan to your INSTALLED_APPS:

INSTALLED_APPS = [
    ...
    "neapolitan",
]

Templates expect a base.html template to exist and for that to defined a content block. (Refs <https://github.com/carltongibson/neapolitan/issues/6>.)

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

neapolitan-24.6.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

neapolitan-24.6-py2.py3-none-any.whl (14.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file neapolitan-24.6.tar.gz.

File metadata

  • Download URL: neapolitan-24.6.tar.gz
  • Upload date:
  • Size: 23.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for neapolitan-24.6.tar.gz
Algorithm Hash digest
SHA256 0c84963a4b5cab2411952ee5bd939adbb8987ef27b3a53ca1399ab607b691cab
MD5 0bf84ad2d016ee3fc6b9097855561c03
BLAKE2b-256 7594fb07ebd974dc0966d96a48b63003a6785110528336d81a1932ed460b7d79

See more details on using hashes here.

File details

Details for the file neapolitan-24.6-py2.py3-none-any.whl.

File metadata

  • Download URL: neapolitan-24.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for neapolitan-24.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2315b23fdfac09c380fd3e3899af237b77db702f60e6779e66dd9f133bce571b
MD5 a8fef7093b54c93fa8b52dad655c9b80
BLAKE2b-256 eb60319218cddc27fc688a4349fa34771e4e6228f1bb60717a271d79b7bff848

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