update 0
このリンクには 302 コードが記載されていますが、技術用語が理解できません。302 コードが の後に来ることは重要ですself.response.out.write(
が、テンプレートunexpected.html
は決してトリガーされませんか? それは私が最も助けを借りることができる部分です。
INFO 2012-09-24 01:15:10,182 dev_appserver.py:2967] "POST /reserve/Rogers/1 HTTP/1.1" 302 -
self.response.out.write(
取得するために使用する必要があるコード以外のコードがあること、または条件の使用の構造unexpected.html
に欠陥があることを心配しています。ただし、誰かが私のコードの詳細を読むとは思っていません。
更新 0
update 1
コードの 1 行が余分で、実際のコードではコメントアウトされていましたが、削除されました。偶然にも、それはif
問題をさらに混乱させるための部分的な発言でした。
更新 1
更新 2
a、b、c、d のさまざまな値で以下のコードを使用し、すべてのブランチが期待どおりに機能することを確認しました。したがって、コードの構造は問題ではないと思います。self.response.out.write(
プロセスをもっと詳しく見ていく必要があると思います。
a=3
b=3
c=5
d=6
if c<d:
print "c<d"
if a<b:
print "a<b"
elif a==b:
print "a=b"
else:
print "not a<=b"
print "not a b"
更新 2
このコードには、if/elif/elif/elif/else を囲むネストされた for ループのペアがあります。最初の if は if を囲み、次に if、if/else、無条件句を囲みます。簡潔にするために、いくつかの行を省略しました。
最初の 10 行目self.response.out.write(
と、さらに 7 行下にある 2 つの同様の行に注目してself.response.out.write(
ください。unexpected.html
これらの行はそれぞれ、入力のエラーを修正するためにどこかに送信される「OK」ボタンを押すようにユーザーに勧める名前のテンプレートにユーザーを送信することになっています。
問題は、302 エラーが発生し、このコードのすぐ下のコードまで処理が続行されることです。
私の条件に何か問題がありますか、それとも何ですか?
for courtname in courtnames:
for time in times:
if name == hiddenname:
pass
elif name != hiddenname and hiddenname == "":
#check early and late
if (res-utime)<timedelta(hours=minBefore[1]):
template_values = {'trans':trans,'location_id':location_id}
path = os.path.join(TEMPLATE_DIR, 'unexpected.html')
self.response.out.write(template.render(path, \
template_values))
if endtime.endTime<[utime.hour,utime.minute]:
if (res-utime)>timedelta(days=1+maxBefore[0], \
hours=maxBefore[1],maxutes=maxBefore[2]):
template_values = {'trans':trans,'location_id':location_id}
path = os.path.join(TEMPLATE_DIR, 'unexpected.html')
self.response.out.write(template.render(path, \
template_values))
else:
if (res-utime)>timedelta(days=maxBefore[0], \
hours=maxBefore[1],minutes=maxBefore[2]):
template_values = {'trans':trans,'location_id':location_id}
path = os.path.join(TEMPLATE_DIR, 'unexpected.html')
self.response.out.write(template.render(path, \
template_values))
tempres.append([time, int(year), int(intMonth), \
int(intWeekday), name,hiddenname,court_id, \
weekday,weekday_key,int(day),0])
elif name != hiddenname and name!="":
#check early and late
conflict = True
tempres.append([time, int(year), int(intMonth), \
int(intWeekday), name,hiddenname,court_id, \
weekday,weekday_key,int(day),1])
elif hiddenname != "" and name == "":
conflict = True
tempres.append([time, int(year), int(intMonth), \
int(intWeekday), name,hiddenname,court_id, \
weekday,weekday_key,int(day),2])
else:
pass