2017-07-02 81 views
1

我试图让使用Django的Web框架我的程序BMI计算器:这是我的views.py表格处理:使用cleaned_data

def bmi(h,w): 
    return(w*10000.00/(h*h) 

def bmi_view(request): 
    form=Bmi_forms() 
    if request.method=='POST': 

    form=Bmi_forms(request.POST) 

    if form.is_valid: 
     weight=form.cleaned_data['weight'] 
     height=form.cleaned_data['height'] 
     Bmi_value =bmi(height,weight) 
     form.save() 

context={'form':form,'Bmi_value': Bmi_value} 

return render(request,'Bmidisplay.html',context) 

这给出了一个无效的语法错误

,我不知道该怎么做 我的一些疑惑的是:1。 我如何修改我的意见来计算BMI(我觉得有冲突保存表单中的数据和计算) 2.如何显示在显示计算BMI值在一个模板,即HTML文件,并提供条件,如

a)If BMI <18.5 ==Overweight 

b)If BMI between 18.5 and 25 =Normal Weight 

c)If BMI above 25 =Overweight 

那好,我是很新的Python的Django的,请帮助我,我很新的这Language.It是,如果你写在这里合适的代码

回答

0

首先检查缩进的高度赞赏你的代码。 if request.method=='POST':之后的代码也应该缩进。其次,您忘记了这里的右括号:return(w*10000.00/(h*h))。最后这应该是if form.is_valid():而不是if form.is_valid:,is_valid()是可以调用的。

至于你提到的模板条件的问题,请if标签:

{% if Bmi_value > 25 or Bmi_value < 18.5 %} 
    Overweight 
{% else %} 
    Normal Weight 
{% endif %} 
+0

由于它可以帮助 –

+0

@KurianBenoy欢迎你! – neverwalkaloner

+0

愚蠢的错误最终杀死我 –