File: admin.py

package info (click to toggle)
django-dynamic-preferences 1.17.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 476 kB
  • sloc: python: 3,040; makefile: 3
file content (21 lines) | stat: -rw-r--r-- 783 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from django.contrib import admin as django_admin
from django import forms

from ..settings import preferences_settings
from .. import admin
from .models import UserPreferenceModel
from .forms import UserSinglePreferenceForm


class UserPreferenceAdmin(admin.PerInstancePreferenceAdmin):
    search_fields = ["instance__username"] + admin.DynamicPreferenceAdmin.search_fields
    form = UserSinglePreferenceForm
    changelist_form = UserSinglePreferenceForm

    def get_queryset(self, request, *args, **kwargs):
        # Instanciate default prefs
        getattr(request.user, preferences_settings.MANAGER_ATTRIBUTE).all()
        return super(UserPreferenceAdmin, self).get_queryset(request, *args, **kwargs)


django_admin.site.register(UserPreferenceModel, UserPreferenceAdmin)