отображение списка типов полей в Django admin

Я новичок в django, поэтому не знаю много об этом. моя проблема заключается в том, что я использую multiselect в моделях в одном поле. S когда я пытаюсь показать это поле в admin с помощью list_display, это дает ошибку неэкранируемого типа:list. пожалуйста помочь.

мой models.py::

language = MultiSelectField(
               choices = LANG_CHOICES,
               null = False,
               blank = False,
               )

мой admin.py::

from django.contrib import admin
from .models import Newspapers

class NewspaperAdmin(admin.ModelAdmin):

    list_display = ['id','language','title','price']

и ошибка:

TypeError at /admin/newspapers/newspapers/
unhashable type: 'list'

1 ответ

  1. создайте функцию для более эффективного определения языка в django.. и чем его использовать в list_display.

    from django.contrib import admin
    from .models import Newspapers
    
    class NewspaperAdmin(admin.ModelAdmin):
    
        list_display = ('id','get_languages','title','price')
    
        def get_languages(self, obj):
           return ",".join([l for l in obj.language])