Я продолжаю получать эту ошибку при удалении постов и комментариев в моем проекте 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