Я продолжаю получать эту ошибку при удалении постов и комментариев в моем проекте django TypeError: __str__ возвращает нестроку (тип User)

Я продолжаю получать эту ошибку при удалении сообщений и комментариев в моем проекте django

TypeError at /admin/blog/comment/
__str__ returned non-string (type User)
Request Method: POST
Request URL:    http://127.0.0.1:8000/admin/blog/comment/
Django Version: 2.2.1
Exception Type: TypeError
Exception Value:    
__str__ returned non-string (type User)
Exception Location: /home/martin/.local/lib/python3.8/site-packages/django/contrib/admin/utils.py in format_callback, line 126
Python Executable:  /usr/bin/python3
Python Version: 3.8.10
Python Path:    
['/home/martin/django-blog',
 '/usr/lib/python38.zip',
 '/usr/lib/python3.8',
 '/usr/lib/python3.8/lib-dynload',
 '/home/martin/.local/lib/python3.8/site-packages',
 '/usr/local/lib/python3.8/dist-packages',
 '/usr/lib/python3/dist-packages']

Это ошибка от konsole

   no_edit_link = '%s: %s' % (capfirst(opts.verbose_name), obj)
TypeError: __str__ returned non-string (type User)
[28/Jan/2022 09:46:12] "POST /admin/blog/comment/ HTTP/1.1" 500 135782

Вам нужно вернуть строку из метода __str__ вашей модели, а не объект User, попробуйте обернуть User, который вы возвращаете из Comment.__str__ в str()

class Comment(models.Model):

    ...

    def __str__(self):
        return str(self.author)

Возврат str из __self__ как

def __str__(self):
    return self.author.username
Вернуться на верх