1
1

seperate subjects/transaction on a user basis

This commit is contained in:
2021-01-18 23:35:10 +01:00
parent 49ef36fbce
commit 0447f9f6ef
7 changed files with 107 additions and 97 deletions

View File

@@ -1,21 +1,43 @@
from django.contrib import admin
from django.contrib.auth import get_user_model
from django.contrib.auth.admin import UserAdmin
from core.models import Subject, Transaction
User = get_user_model()
class CustomAdminSite(admin.AdminSite):
pass
admin_site = CustomAdminSite()
admin_site.register(User, UserAdmin)
@admin.register(Subject, site=admin_site)
class SubjectAdmin(admin.ModelAdmin):
pass
list_display = ("name",)
search_fields = ("name",)
exclude = ("user",)
def save_model(self, request, obj, form, change):
if not change:
obj.user = request.user
return super().save_model(request, obj, form, change)
def get_search_results(self, request, queryset, search_term):
queryset, use_distinct = super().get_search_results(request, queryset, search_term)
return queryset.filter(user=request.user), use_distinct
@admin.register(Transaction, site=admin_site)
class TransactionAdmin(admin.ModelAdmin):
list_display = ("subject", "amount", "booking_date",)
ordering = ("-booking_date",)
search_fields = ("subject__name",)
autocomplete_fields = ("subject",)
def get_search_results(self, request, queryset, search_term):
queryset, use_distinct = super().get_search_results(request, queryset, search_term)
return queryset.filter(subject__user=request.user), use_distinct