Pregunta anterior, pero vale la pena al menos un pequeño ejemplo, ya que creo que este es un problema bastante común.
@Davor Lucic señaló la solución correcta. A partir de hoy, Django se envía con un genial message framework que ayuda mucho en esto.
lo tanto, que usted quiere dar aviso dentro de la administración de Django cuando un objeto coche dentro de su modelo de coche cambia de propietario, usted podría hacer algo así:
admin.py
from django.contrib import admin
from django.contrib import messages
from .models import Car
@admin.register(Car)
class CarAdmin(admin.ModelAdmin):
list_display = ('owner', 'color', 'status', 'max_speed',)
def save_model(self, request, obj, form, change):
if 'owner' in form.changed_data:
messages.add_message(request, messages.INFO, 'Car has been sold')
super(CarAdmin, self).save_model(request, obj, form, change)
vale la pena mencionar que si desea incluir las etiquetas HTML en su mensaje, hay que añadir:
from django.utils.safestring import mark_safe
que permiten s que usted pueda hacer algo como:
messages.add_message(request, messages.INFO, mark_safe("Please see <a href='/destination'>here</a> for further details"))
No hay necesidad de decir que es mejor que estar seguro de que el código va a añadir es realmente seguro.
Nada excepcional, pero tal vez (y afortunadamente) alguien lo encontrará útil.
Tenía un mensaje cuando un usuario guardaba una entrada en el administrador (fondo amarillo en la parte superior de la página), pero de alguna manera desaparecía. ¿Cómo lo recupero? Ahora solo recibo un mensaje cuando un usuario hace un error – Timo