Skip to main content

django-admin-item-owner

Model item always has an owner, and login user can only see owned items.

Goal

  • Set item's owner to current user automatically.

Install

pip install django-admin-item-owner

Settings

INSTALLED_APPS = [
    ....
    'django_global_request',
    'item_owner',
    ...
]

MIDDLEWARE = [
    ...
    'django_global_request.middleware.GlobalRequestMiddleware',
    ...
]

Example

example/models.py

from django.db import models
from item_owner.models import ItemOwnerMixin
from item_owner.models import ItemShareMixin

class Category(ItemOwnerMixin, models.Model):
    title = models.CharField(max_length=32)

    def __str__(self):
        return self.title

class Book(ItemOwnerMixin, ItemShareMixin, models.Model):
    category = models.ForeignKey(Category, on_delete=models.SET_NULL, null=True, blank=True, related_name="books")
    title = models.CharField(max_length=32)

    def __str__(self):
        return self.title

example/admin.py

from django.contrib import admin
from django import forms
from item_owner.admin import ItemOwnerMixin
from item_owner.admin import ItemShareMixin
from .models import Category
from .models import Book



class BookInline(ItemOwnerMixin, ItemShareMixin, admin.TabularInline):
    model = Book

class CategoryAdmin(ItemOwnerMixin, admin.ModelAdmin):
    list_display = ["title"]
    inlines = [
        BookInline,
    ]

class BookAdmin(ItemOwnerMixin, ItemShareMixin, admin.ModelAdmin):
    list_display = ["title"]

admin.site.register(Category, CategoryAdmin)
admin.site.register(Book, BookAdmin)

Releases

v0.2.0 2020-01-08

  • Add ItemShareMixin for models and admins.

v0.1.0 2019-12-01

  • First release.

Release files for django-admin-item-owner 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-admin-item-owner 0.2.0
File Size Uploaded
django-admin-item-owner-0.2.0.tar.gz 3.0 kB Details

Release files / django-admin-item-owner-0.2.0.tar.gz

Download URL django-admin-item-owner-0.2.0.tar.gz
Size 3.0 kB
Tags Source
SHA-256 checksum
How to use checksums
4b76a085f53c41384c7a8fa4bd20ba68bf41bccd493270be6b2d6f8937449f05
BLAKE2b-256 checksum
How to use checksums
6b08a7a7104021d9d77725d2532c708a5b39c617df0c98191424b4a51c7e1322
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.5

Release history Release notifications | RSS feed

This release

0.2.0 This release

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page