pythondjangodjango-modelsdjango-admin

Django "xxxxxx Object" display customization in admin action sidebar


I would like to change the default behavior of how the admin recent changes sidebar displays the name of "objects" added. Refer to the picture below:

In the recent actions module, it also shows new objects as "MyModelName object"

I would like to change how these are named in the Admin. Ideally, I would like to be able to change it from "MyModelName object" to, as in the "Policy" object example, something like "Policy: {{ value of the policy's "Policy Name" field. }}.

I was thinking that __unicode__ for my Patient model handled this, but it doesn't appear to. Any assistance is appreciated.


Solution

  • __unicode__ does do that. Your model should look something like this:

    class SomeModel(models.Model):
        def __unicode__(self):
           return 'Policy: ' + self.name
    

    On Python 3 you need to use __str__:

    def __str__(self):
       return 'Policy: ' + self.name