https://docs.djangoproject.com/en/1.7/ref/contrib/...
там много примеров. Если вкратце, то создаёте у модели новую функцию, которая возвращает количество. Добавляем allow_tags. Идём в админку и прописываем lists_display. Всё.
Правда я для manytomany не использовал. Только для foreignkey.
UPD:
Решил проверить, все нормально работает. Только не совсем то, но принцип понятен.
models.py
from django.utils.html import format_html
class PostTag(models.Model):
title = models.CharField(max_length=255)
def __str__(self):
return self.title
def get_count_posts(self):
return format_html('<span style="color: red">{0}</span>', self.post_set.count())
get_count_posts.allow_tags = True
class Post(models.Model):
title = models.CharField(max_length=255)
post_tag = models.ManyToManyField(PostTag, null=True, blank=True)
def __str__(self):
return self.title
admin.py
from games.models import PostTag, Post
class PostTagAdmin(admin.ModelAdmin):
list_display = ('title', 'get_count_posts')
admin.site.register(PostTag, PostTagAdmin)
admin.site.register(Post)