Expose django.contrib.admin as a restful service. useful for adding new features to django admin or writing a new admin.
Project description
Expose django.contrib.admin as a restful service. useful for adding new features to django admin or writing a new admin.
Features ⚡
- Expose all django.contrib.admin views as a restful api.
- Similar to django.contrib.admin.
- Customizable AdminSite and ModelAdmin.
- Supports InlineModelAdmins and bulk edits.
- Provides data to dynamically create forms on clients from serializers.
- Extensively tested
Demo 🚀
You can also test it in this demo that is hosted on replit. use these credentials to login
- username: admin
- password: password
Requirements 📄
Python 3.9+
This package depends on
- django-rest-framework
- django.contrib.admin
Installation 📲
Install django-api-admin package.
$ pip install django-api-admin
In your settings.py make sure you have django.contrib.admin and rest_framework in your installed apps. and add django_api_admin.
INSTALLED_APPS = [
'django.contrib.admin',
'rest_framework',
'django_api_admin',
]
Example 💡
1. create some models.
models.py
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=100)
def __str__(self):
return self.name
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE)
def __str__(self):
return self.title
2. register them using the admin site.
admin.py
from django_api_admin.sites import site
from .models import Author, Book
site.register(Author)
site.register(Book)
3. include admin urls.
urls.py
from django_api_admin.sites import site
urlpatterns = [
path('api_admin/', site.urls),
]
4. run your development server.
$ python manage.py runsever
visit your localhost to see the browsable api.
Screenshots 🖼
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django-api-admin-1.1.2.tar.gz
.
File metadata
- Download URL: django-api-admin-1.1.2.tar.gz
- Upload date:
- Size: 24.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e70d611cbae3b2fed01e0065f9698feabe41fde491b32ce98a35a346ec4c9dda |
|
MD5 | 59f2c54a0f15f66bacc262d990d2bf6b |
|
BLAKE2b-256 | 95632029a90ade0887690f48ba391cb330a1fbed6f0a62aa52c941c9988d6b13 |
File details
Details for the file django_api_admin-1.1.2-py3-none-any.whl
.
File metadata
- Download URL: django_api_admin-1.1.2-py3-none-any.whl
- Upload date:
- Size: 28.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c62d43fe62e93c07bbb9e9a2de8a344bae456a146911ef9e66fc42b7c954e172 |
|
MD5 | 5dd329e07eb92616e9d18cbe2400bffb |
|
BLAKE2b-256 | c0ef1492411e7f8dbbee5e92440b3260f24a5bb2f7c6655b9a75fba05e4ef2dc |