我正在我的电脑上使用 django 进行测试,如果我在没有 else 的情况下运行代码,则 if 语句为真并且 r1 变量是正确的。
def trovapernome(request, aggregatore, nome):
url = urllib.urlopen("http://127.0.0.1:8000/media/%s.xml" % (aggregatore))
richiesta = url.read()
tree = ET.fromstring(richiesta)
iterator = tree.getiterator("location")
t = get_template('prova.xml')
for name in tree.iter('name'):
if name.text.lower() == nome.lower():
c = Context({'id' : name.text})
r1 = HttpResponse(t.render(c), mimetype='application/xml')
return r1
否则这段代码:
def trovapernome(request, aggregatore, nome):
url = urllib.urlopen("http://127.0.0.1:8000/media/%s.xml" % (aggregatore))
richiesta = url.read()
tree = ET.fromstring(richiesta)
iterator = tree.getiterator("location")
t = get_template('prova.xml')
for name in tree.iter('name'):
if name.text.lower() == nome.lower():
c = Context({'id' : name.text})
r1 = HttpResponse(t.render(c), mimetype='application/xml')
else: r1 = HttpResponse(t.render(Context({'id' : 'prova'})), mimetype='application/xml')
return r1
总是返回 else 语句