Python 无法分配"&书信电报;查询集[<;子项:名称>;]>&引用;:&引用;Mark.MarkOwner";必须是一个";“儿童”;实例
这是另一个愚蠢的问题。我是django的新手,不知道我需要做什么。有人能帮我吗?或者发送几页文档?目标是将标记选择器指定给它显示的子对象。这是我的一些代码 我的HTML models.py url.pyPython 无法分配"&书信电报;查询集[<;子项:名称>;]>&引用;:&引用;Mark.MarkOwner";必须是一个";“儿童”;实例,python,django,Python,Django,这是另一个愚蠢的问题。我是django的新手,不知道我需要做什么。有人能帮我吗?或者发送几页文档?目标是将标记选择器指定给它显示的子对象。这是我的一些代码 我的HTML models.py url.py path('/',views.mlat,name='mlat'), 路径(“//addmark/”,views.addmark,name='addmark') 谢谢你的帮助 问题来自您的: d=Child.objects.filter(ChildClass=a) .filter返回查询集,您不
path('/',views.mlat,name='mlat'),
路径(“//addmark/”,views.addmark,name='addmark')
谢谢你的帮助 问题来自您的:
d=Child.objects.filter(ChildClass=a)
.filter返回查询集,您不能将查询集分配给Mark.MarkOwner
将其更改为:
d = Child.objects.get(ChildClass = a)
返回一个子实例
但如果子级不存在,则会返回错误,因此我建议使用:
if Child.objects.filter(ChildClass = a).exists():
d = Child.objects.get(ChildClass = a)
通过这种方式,您可以在不发生崩溃的情况下处理子对象不存在的情况
class SubjectClas(models.Model):
subject = models.CharField('Предмет', max_length = 50, default='Алгебра')
clas = models.ForeignKey(Class, null=True, on_delete= models.SET_NULL)
class Child(models.Model):
ChildName = models.CharField('Имя ученика', max_length = 50)
ChildClass = models.ForeignKey(Class, null=True, on_delete= models.SET_NULL)
def __str__(self):
return self.ChildName
class Mark(models.Model):
MarkOwner = models.ForeignKey(Child, null=True, on_delete= models.SET_NULL)
MarkSubjet = models.ForeignKey(SubjectClas, null=True, on_delete= models.SET_NULL)
Markd = models.CharField('Оценка', max_length = 2)
MarkDate = models.DateField('Дата')
def __str__(self):
return self.Markd
path('<int:classid>/<int:subjectid>/', views.mlat, name = 'mlat'),
path('<int:classid>/<int:subjectid>/addmark/', views.addmark, name = 'addmark')
d = Child.objects.get(ChildClass = a)
if Child.objects.filter(ChildClass = a).exists():
d = Child.objects.get(ChildClass = a)