raw_id_fields: Jak wyświetlić nazwę zamiast id?
Dostosowując panel administracyjny Django, używamraw_id_fields
aby wybrać klucz obcy z modelu, który ma tysiące elementów, ponieważ domyślne rozwijane pole wyboru jest niewygodne z tak wieloma elementami.
Działa, ale pokazuje identyfikator widoczny na tym obrazie:
Czy jest jakiś sposób na pokazanie nazwy lub innego pola zamiast identyfikatora? Albo czy istnieje lepszy sposób, aby to osiągnąć niż użycieraw_id_fields
?
To jest mój kod wmodels.py
:
class Structure(MPTTModel):
name = models.CharField(max_length=200, unique=True, verbose_name = _('name'))
parent = TreeForeignKey('self', null=True, blank=True, related_name='children', verbose_name = _('parent'))
def __unicode__(self):
return u"%s" % (self.name)
Wadmin.py
:
class StructureAdmin(tree_editor.TreeEditor):
search_fields = ('name',)
raw_id_fields = ('parent',)