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.7.tar.gz (24.1 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

File details

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

File metadata

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

File hashes

Hashes for neapolitan-24.7.tar.gz
Algorithm Hash digest
SHA256 4081f1b4fa7e7f9142688ab7efde3b24af3fb262d72f2fb96af834d8481851bf
MD5 6dcafddd30e99bf8b17cd1bcad84b073
BLAKE2b-256 b280934b41a1b2ca037d68f4d00b66e540b8d7ef1d1f8f572f922c6d17446bb2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: neapolitan-24.7-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.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2b3bf2490dce77819c0c46f2e4841820e1f68df9e745a84837b818395f3b7fdb
MD5 276544921f5d7b92fbb4fc59252319a7
BLAKE2b-256 68a419f79fa8dd92c7b8109ad77f9fb274320f62f15a89d9b174b980ba441962

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