我正在尝试创建“Partita”模型的实例,但我不想手动设置带有表单的字段;我需要使用一个随机整数来设置字段(它们是两个外键),该整数指的是外键的 id。
这是为了创建一种足球比赛的创建者,其中“Partita”(意大利语比赛)由 team1 和 team2(在我的代码“casa”和“trasferta”中)组成,我该怎么做?
我试过这个,但它抛出:找不到页面,没有 FantaSquadra 匹配给定的查询。
视图.py:
def createPartite(request):
num1=0
num2=0
gior=0
while num1==num2:
num1 = str(random.randint(1,3))
num2 = str(random.randint(1,3))
if num1!=num2:
gior=gior+1
cas= get_object_or_404(FantaSquadra, pk=num1)
tra= get_object_or_404(FantaSquadra, pk=num2)
partita = Partita.creaP(cas,tra)
partita.save()
contesto = {
'partita': partita
}
return render(request, 'sondaggio/partite.html',contesto)
模型.py:
class FantaSquadra(models.Model):
proprietario = models.ForeignKey(User, on_delete=models.CASCADE,unique=True)
nome_fantasquadra = models.CharField(max_length=200,unique = True)
punteggio = models.IntegerField(default=0)
def __str__(self):
return self.nome_fantasquadra
class Partita(models.Model):
giornata = models.IntegerField(default=1)
casa=models.ForeignKey(FantaSquadra,on_delete=models.CASCADE, related_name='fantasquadra_casa', unique=True)
traferta = models.ForeignKey(FantaSquadra, on_delete=models.CASCADE, related_name='fantasquadra_trasferta', unique=True)
def __str__(self):
return "giornata "+str(self.giornata)
def creaP(self,cas,trasfert):
self.casa = cas
self.traferta = trasfert
return self
温温酱
相关分类