[Solved]-Django: Friendlier header for StackedInline for auto generated through model?

12๐Ÿ‘

โœ…

Iโ€™ve never used an m2m field like this, so thanks! Learned something new.

I found 2 ways to get around the problem:

1: simply reassign the __unicode__ function with a new function

class MyInline(admin.TabularInline):
    MyModel.m2m.through.__unicode__ = lambda x: 'My New Unicode'
    model = MyModel.m2m.through

2: set up a proxy model for the m2m.through model and use that model instead

class MyThrough(MyModel.m2m.through):
    class Meta:
        proxy = True
    def __unicode__(self):
        return "My New Unicode"

class MyInline(admin.TabularInline):
    model = MyThrough

3๐Ÿ‘

For some reason, the (admittedly now old) accepted answer did not work for me.

This modification, however, did change the header:

MyModel.field.through.__str__ = lambda x: 'New Title'

Where field is the ManyToMany field.

๐Ÿ‘คalstr

Leave a comment