Closed perepicornell closed 2 years ago
He estat investigant el tema i he vist que en principi el model de Django que tracta tot això és el LogEntry
de django.contrib.admin.models
. El que he provat més immediatament és doncs fer
self.children.append(
modules.ModelList(
_("Logs"),
column=1,
collapsible=False,
models=("django.contrib.admin.models.LogEntry",),
)
)
però per alguna raó grappelli no mostra cap model, cosa que entenc que fa quan no hi ha cap instància disponible. He entrat a la shell del docker per veure si els EntryLog
s s'estaven fent bé, i sí que he vist que després d'afegir un parell d'usuaris a l'admin, hi havia dues entries, però no estaven del tot ben configurades (l'user associat a l'entry no sortia correctament).
L'altre cosa és que tot i que m'he mirat l'exemple de coòpolis, no acabo d'entendre com és que funciona perquè no veig enlloc la definició de la URL admin/logentry
. Entenc que és algo de Django pròpiament, però tampoc he sabut trobar res a la documentació.
La URL /admin/logentry
la crea un package: https://github.com/yprez/django-logentry-admin
Si l'instal·les la URL ja existirà. El tema és que la app diria que fa poc més que això: https://github.com/yprez/django-logentry-admin/blob/master/logentry_admin/admin.py
Així que una opció és copiar directament això a apps/base/admin.py
o on sigui... ara bé si veus que prefereixes seguir fent servir el package extern, endavant, com ho vegis millor tu.
Diria que a docus es menciona com fer-ho. En cas que sigui un package extern valorar si val la pena ja que segurament lo únic que fa és registrar un model a l'admin.
Un exemple de com muntar-ho és al repo d'Ateneus, a
apps/coopolis/dashboard.py
:links_children.append(["Registre d'activitat al panell d'administració", 'admin/logentry/'])
Al posar això al dashboard, fer-ho de manera que únicament superusers vegin l'enllaç/el model. Lo ideal seria que en comptes d'un enllaç com passa amb Coòpolis, sigui una referència al model com amb la resta de coses (al dashboard son els ModelList), de manera que es pugui crear una categoria "Administració" on hi hagi això, el Constance, i d'altres coses en un futur.