1
In meinem ModelAdmin habe ich zwei Aggregatwerte berechnet und möchte diese mit einem Widget anzeigen.Verwenden eines Widgets für den Aggregatwert in Django Admin
def get_queryset(self, request):
qs = super(QuizAdmin, self).get_queryset(request).annotate(
avg_difficulty=Avg('ratings__difficulty'),
avg_rating=Avg('ratings__rating'),
)
return qs.filter(author__agents=request.user)
Im Moment mache ich diese
def avg_difficulty(self, obj):
return StarRatingWidget().render(attrs={'id': 'id_avg_difficulty'},name="avg_difficulty", value=obj.avg_difficulty, readonly=True)
Gibt es eine einfachere und flexiblere Art und Weise ein Widget für einen Gesamtwert zu benutzen? Die Registrierung in ModelForm scheint nicht zu funktionieren.
Ich möchte das Widget mehrmals als Eingabe und als schreibgeschütztes Widget verwenden. Ich habe das Problem, dass ich es für Listenelemente im Admin verwenden möchte, aber wenn ich das tue, werden die Ressourcen in der Media-Klasse nicht geladen. Haben Sie eine Idee, wie Sie dieses Problem lösen können? – Silvester
Sie können einem ModelAdmin auch eine Media-Klasse hinzufügen: https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#modeladmin-asset-definitions –