Ich möchte Daten (z. B. Einstellungen) speichern, die insgesamt nur eine benötigen
Model
models.py
from django.db import models
class Setting(models.Model):
pass
Admin
admin.py
from django.contrib import admin
from .models import Setting
class SettingAdmin(admin.ModelAdmin):
def has_add_permission(self, request):
#Es darf nur eine Einstellung registriert werden
count = Setting.objects.all().count()
if count == 0:
return True
return False
def has_delete_permission(self, request, obj=None):
#Verhindern Sie, dass Einstellungen gelöscht werden
return False
admin.site.register(Setting,SettingAdmin)
Durch Überschreiben von has_add_permission können Sie die Anzahl der Registrierungen und die Unfähigkeit steuern, pro Benutzer über request.user hinzuzufügen. Ebenso können Sie has_delete_permission überschreiben, um das Löschen zu steuern.
Recommended Posts