Tengo un modelo llamado Category que es recursivo. El modelo va así:
from django.db import models class Category(models.Model): name = models.CharField(max_length=255, blank=False) description = models.CharField(max_length=255, blank=False) sub_category = models.ForeignKey('self', blank=True, null=True, related_name='subcategory') def __str__(self): return self.name mi admin.py para la category es:
from django.contrib import admin from category.models import Category from django import forms class CategoryAdmin(admin.ModelAdmin): list_display = ['id', "name", "sub_category", 'description'] list_filter = ["name"] search_fields = ["name"] ordering = ('sub_category',) class Meta: model = Category admin.site.register(Category, CategoryAdmin) Cuando quiero agregar más categorías a la base de datos, voy a la sección de administración y lo hago. Sin embargo, supongamos que necesito distinguir qué categoría es parte de su categoría principal, ¿cómo lo haría? ahora mismo, estoy viendo: 
lo cual no es muy útil. ¿Hay alguna forma de tener la categoría principal al lado de la subcategoría? como este formato:
Fui realmente estúpido con este, la respuesta fue realmente simple, básicamente, solo tuve que editar el método __str__ en el modelo...
def __str__(self): if self.sub_category != None: return '[{0}] {1}'.format(self.sub_category.name, self.name) return self.name