from . import edit
from flask import render_template, url_for, redirect, flash
from .forms import ApplePearForm
from ..models import Apple, Pear
from .. import db
@edit.route('/apples-and-pears', methods=['GET', 'POST'])
def apples_and_pears():
form = ApplePearForm()
if form.validate_on_submit():
apple = Apple(name=form.name.data)
db.session.add(apple)
pear = Pear(apple_id=apple.id, amount=4)
db.session.add(pear)
flash('fruit was added to database')
return redirect(url_for('browse.fruit_list'))
return render_template('edit/apples_and_pears.html', form=form)
答案 0 :(得分:0)
在第一个IF声明中你需要很多。 if语句有3个部分。测试结果如果为true,则结果为false。结果为假后,您的陈述将继续。
通用if语句示例:
if(,,)
你已经添加了一个和声明。这来自AND('主题教师'!X4<>“”,'主题教师'!T4> = 70))。因此,如果x4不是空白且t4大于或等于70则为真,否则为fase。你的陈述如果和陈述是真的,那么使它等于'主题教师'中的值!T4。
但是如果它是假的,那就等于'学科教师'!T4。那应该是结束。但是你有另一个if语句开头。
根据您要执行的操作,您应将下一个if语句放在true部分或false部分中。
答案 1 :(得分:0)
你可以制作你的公式"工作"通过删除" else / otherwise"前两个IFs
的结果,如下所示:
=IF(AND('Subject Teachers'!X4<>"",'Subject Teachers'!T4>=70),'Subject Teachers'!T4,IF(AND('Subject Teachers'!R4<>"",'Subject Teachers'!O4>=70),'Subject Teachers'!O4,IF(AND('Subject Teachers'!L4<>"",'Subject Teachers'!I4>=70),'Subject Teachers'!I4,"N/A")))
删除结果L4
和R4
。
原始公式是不可能的,因为它表示,例如,&#34;如果X然后执行此操作,否则执行此操作,如果Y则执行此操作,否则执行此操作,如果Z则执行此操作,否则做这个&#34; 。请参阅该声明中有三个结果 - 它无法返回单个答案。典型的嵌套IF公式为&#34;如果X则执行此操作,否则如果Y则执行此操作,否则如果Z则执行此操作,否则执行此操作<#34; 。这就是上面编辑过的公式的作用。
或者,如果您确实想要所有三个结果,那么您可以将结果嵌套在一起,如下所示:
=IF(AND('Subject Teachers'!X4<>"",'Subject Teachers'!T4>=70),'Subject Teachers'!T4,'Subject Teachers'!R4)&"-"&IF(AND('Subject Teachers'!R4<>"",'Subject Teachers'!O4>=70),'Subject Teachers'!O4,'Subject Teachers'!L4)&"-"&IF(AND('Subject Teachers'!L4<>"",'Subject Teachers'!I4>=70),'Subject Teachers'!I4,"N/A")
这简单地将三个结果组合在一起,用连字符分隔。所以结果就像80-90-50
。