【发布时间】:2020-07-20 04:38:13
【问题描述】:
我遍历存储在我的数据库中的多个问题,每个问题都有 5 个答案(开放性、尽责性、外向性、宜人性、神经质),并试图计算每个答案重复的次数并存储分数
型号:
class Reponses(models.Model):
ScoreOp = models.IntegerField(blank=True,null=True)
ScoreCon = models.IntegerField(blank=True,null=True)
ScoreExt = models.IntegerField(blank=True,null=True)
ScoreAgr = models.IntegerField(blank=True,null=True)
ScoreNeu = models.IntegerField(blank=True,null=True)
Product = models.OneToOneField("Product", on_delete=models.CASCADE,null=True)
class Personalite(models.Model):
Question = models.CharField(max_length=50,blank=True)
openness = models.CharField(max_length=20,blank=True)
conscientiousness = models.CharField(max_length=20,blank=True)
extraversion = models.CharField(max_length=20,blank=True)
agreeableness = models.CharField(max_length=20,blank=True)
neuroticism = models.CharField(max_length=20,blank=True)
models.ForeignKey("Reponses", on_delete=models.CASCADE,null=True)
观看次数:
def home_views(request):
questions= Personalite.objects.all()
product = Product.objects.get(id=5)
if request.method == 'POST':
try:
reponse = Reponses.objects.create()
reponse = Reponses(Product= product)
allRep = []
allRep = request.POST.getlist('poll')
for Rep in allRep:
print(Rep)
if Rep == 'openness':
reponse.ScoreOp = reponse.ScoreOp + 1
elif Rep == 'conscientiousness':
reponse.ScoreCon += 1
elif Rep == 'extraversion':
reponse.ScoreExt += 1
elif Rep == 'agreeableness':
reponse.ScoreAgr += 1
elif Rep == 'neuroticism':
reponse.ScoreNeu += 1
else :
print('HAHAHAHHAHAAH')
reponse.save()
except NameError:
print("An exception occurred",NameError)
context={
'questions':questions
}
return render(request , "home.html",context)
【问题讨论】:
-
你的问题是什么,在哪一行发生了什么错误?
标签: python django django-models django-views