Django /admin/location处的TypeError\uuuuu str\uuuuuuuuuuuuuuuuuuuuuuuuu返回非字符串(类型NoneType)

Django /admin/location处的TypeError\uuuuu str\uuuuuuuuuuuuuuuuuuuuuuuuu返回非字符串(类型NoneType),django,typeerror,Django,Typeerror,我有一段代码,每次我想要呈现前端模板时,它都会在每个片段(如姓名、电话等)上给出“无”。当我想从管理页面查看它时,它会抛出一个错误: TypeError位于/admin/accounts/student/2/change/ str\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu返回的非字符串(类型为NoneType) 我对Django完全陌生。如果有人能帮助我,我将非常感激。提前谢谢 这是我的models.py: from django.contrib.auth.

我有一段代码,每次我想要呈现前端模板时,它都会在每个片段(如姓名、电话等)上给出“无”。当我想从管理页面查看它时,它会抛出一个错误:

TypeError位于/admin/accounts/student/2/change/

str\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu返回的非字符串(类型为NoneType)

我对Django完全陌生。如果有人能帮助我,我将非常感激。提前谢谢

这是我的models.py:

from django.contrib.auth.models import User

# Create your models here.

class Student(models.Model):
    user = models.OneToOneField(User, null=True, on_delete=models.CASCADE)
    name = models.CharField(max_length=200)
    phone = models.CharField(max_length=200, null=True)
    email = models.CharField(max_length=200, null=True)
    profile_pic = models.ImageField(null= True, blank= True)
    date_created = models.DateTimeField(auto_now_add=True, null=True)

    def __str__(self):
        return self.name

class Tag(models.Model):
    name = models.CharField(max_length=200, null=True)
    def __str__(self):
        return self.name

class Books(models.Model):
    CATEGORY = (
            ('Physics', 'Physics'),
            ('Chemistry', 'Chemistry'),
            ('Mathematics', 'Mathematics'),
            ) 

    name = models.CharField(max_length=200, null=True)
    author = models.CharField(max_length=200, null=True)
    price = models.FloatField(null=True)
    category = models.CharField(max_length=200, null=True, choices=CATEGORY)
    description = models.CharField(max_length=200, null=True, blank=True)
    date_created = models.DateTimeField(auto_now_add=True, null=True)
    tags = models.ManyToManyField(Tag)

    def __str__(self):
        return self.name

class Issue(models.Model):
    STATUS = (
            ('Pending', 'Pending'),
            ('Out for delivery', 'Out for delivery'),
            ('Delivered', 'Delivered'),
            )

    student = models.ForeignKey(Student, null=True, on_delete= models.SET_NULL)
    book = models.ForeignKey(Books, null=True, on_delete= models.SET_NULL)
    date_created = models.DateTimeField(auto_now_add=True, null=True)
    status = models.CharField(max_length=200, null=True, choices=STATUS)

    def __str__(self):
        return self.book.name
这是我的admin.py文件:

from . models import *
# Register your models here.


admin.site.register(Student)
admin.site.register(Books)
admin.site.register(Tag )
admin.site.register(Issue)
模板呈现期间出错:


__str__ returned non-string (type NoneType)
1   {% load i18n static %}<!DOCTYPE html>
2   {% get_current_language as LANGUAGE_CODE %}{% get_current_language_bidi as LANGUAGE_BIDI %}
3   <html lang="{{ LANGUAGE_CODE|default:"en-us" }}" {% if LANGUAGE_BIDI %}dir="rtl"{% endif %}>
4   <head>
5   <title>{% block title %}{% endblock %}</title>
6   <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% static "admin/css/base.css" %}{% endblock %}">
7   {% if not is_popup and is_nav_sidebar_enabled %}
8     <link rel="stylesheet" type="text/css" href="{% static "admin/css/nav_sidebar.css" %}">
9     <script src="{% static 'admin/js/nav_sidebar.js' %}" defer></script>
10  {% endif %}

__str_uuu返回的非字符串(类型NoneType)
1{%load i18n static%}
2{%get_current_language as language_CODE%}{%get_current_language_bidi as language_bidi%}
3.
4.
5{%block title%}{%endblock%}
6.
7{%if不是弹出窗口,并且是启用导航侧栏的%}
8.
9
10{%endif%}

我终于解决了这个问题。在
Student
模型中,我刚刚替换了它:

        return str(self.name)

相反,
返回self.name

您可以将您的管理文件添加到问题中吗?您有带标签的直连标签吗?请再次检查。我已经添加了admin.py文件。