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.

On an on-going basis, Neapolitan aims to support all current Django versions and the matching current Python versions.

Please see:

Support for Python and Django versions will be dropped when they reach end-of-life. Support for Python versions will be dropped when they reach end-of-life, even when still supported by a current version of Django.

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 template to define 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-26.1.tar.gz (26.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neapolitan-26.1-py2.py3-none-any.whl (14.2 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

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

File hashes

Hashes for neapolitan-26.1.tar.gz
Algorithm Hash digest
SHA256 e45cd8f4787174777a4f8b822bea6bace457b41507cf1a8db8de0b53d7e331d0
MD5 1f3bad5841506bc36e5686b194f7cc03
BLAKE2b-256 16adb359f22cd2506d3d466a50813644547942bb4e4e23714004fcb5e5bce6b9

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for neapolitan-26.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 14ef19ace754125140599310be5053e0f3697dec2aabee0993adde780767a816
MD5 3967215b73d71db94f0ed0d574d1fa69
BLAKE2b-256 0ba5b84542dc6771b2174d0d7993a7c2c14b8a3a6ae44856bb3e7dc7cdbc7ee7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page