我正在尝试使用Django Web Frameworks为我的程序制作一个BMI计算器:
这是我的views.py
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.如何在模板(即HTML文件)中显示计算的显示Bmi值,并给出类似
的条件a)If BMI <18.5 ==Overweight
b)If BMI between 18.5 and 25 =Normal Weight
c)If BMI above 25 =Overweight
多数民众赞成,我对Python Django很陌生,请帮助我,因为我对这门语言很陌生。如果你在这里编写合适的代码,我将非常感谢
答案 0 :(得分: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 %}