Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django-只能将str(而不是“ManyRelatedManager”)连接到str_Python_Django - Fatal编程技术网

Python Django-只能将str(而不是“ManyRelatedManager”)连接到str

Python Django-只能将str(而不是“ManyRelatedManager”)连接到str,python,django,Python,Django,我正试图保存我的模型。但是当我试图保存我的模型时,我抛出了以下错误 TypeError at /admin/user/teacher/add/ can only concatenate str (not "ManyRelatedManager") to str 我的models.py文件如下所示 class Class(models.Model): Class = models.CharField(max_length=50) section_choices = (('

我正试图保存我的模型。但是当我试图保存我的模型时,我抛出了以下错误

TypeError at /admin/user/teacher/add/
can only concatenate str (not "ManyRelatedManager") to str
我的models.py文件如下所示

class Class(models.Model):
 Class = models.CharField(max_length=50)
 section_choices = (('A','A'),('B','B'),('C','C'),('D','D'),('E','E'))
 Section = models.CharField(max_length=100, choices=section_choices)

 def __str__(self):
     return self.Class + "," + self.Section

class Subject(models.Model):
subject = models.CharField(max_length=100)

def __str__(self):
    return self.subject

class Teacher(models.Model):
 User = models.ForeignKey(User, on_delete=models.CASCADE)
 Subject = models.ManyToManyField(Subject)
 Name = models.CharField(max_length=50)
 Profile = models.ImageField(upload_to = upload_teacher_profile_to, default = 
 'defaults/teacher_profile.png')
 Class = models.ManyToManyField(Class)
 Number = models.IntegerField(blank=True)
 is_banned = models.BooleanField(default=False)

 def __str__(self):
     return self.Name + "of" + self.Class

将您的教师模型
def\uu str\uu(self)
函数更新为

def\uuuu str\uuuuuu(自):
返回{[class for class in self.class.all()]中的类的{self.Name}”
教师模型中的多个字段,多个字段可以包含多个对象,因此不能使用self.Class


您可以进一步了解ManyToManyField

您认为“+self.Class的这一行
self.Name+”应该做什么
Class
是一个
ManyToManyField
,因此对于
Teacher
的实例,它是一个
ManyRelatedManager
。注意:也请不要使用
PascalCase
约定命名属性/变量,请使用
snake\u case
参见