我有這樣的代碼:Django的查詢在一個循環中失敗沒有很好的理由
msgs = int(post['time_in_weeks'])
for i in range(msgs):
tip_msg = Tip.objects.get(week_number=i)
它總是會導致一個錯誤,指出沒有值可以找到。
WEEK_NUMBER是整數字段。當我直接輸入我的值時, 查詢起作用。
當我打印出我的價值,我得到的預期值。
任何投入都將受到嚴重的讚賞。
謝謝。
我有這樣的代碼:Django的查詢在一個循環中失敗沒有很好的理由
msgs = int(post['time_in_weeks'])
for i in range(msgs):
tip_msg = Tip.objects.get(week_number=i)
它總是會導致一個錯誤,指出沒有值可以找到。
WEEK_NUMBER是整數字段。當我直接輸入我的值時, 查詢起作用。
當我打印出我的價值,我得到的預期值。
任何投入都將受到嚴重的讚賞。
謝謝。
的range
功能會給你數最多和排除msgs
從零開始的列表。我想沒有提示week_number=0
。
週末號= 0有一個提示。 – user170302 2010-03-04 01:25:20
即使我使用i + 1而不是我仍然有同樣的問題。最終試圖爲tip_msg獲得一個獨特的價值。這一切都在GAE上通過django non_rel運行:http://bitbucket.org/wkornewald/django-nonrel/wiki/Home所有其他查詢仍然有效。 – user170302 2010-03-04 01:29:05
此外,爲了限制你能做到這一點的查詢數量:
for tip in Tip.objects.filter(week_number__lt=msgs):
#do something
,或者,如果你想具體周:
weeks=(1,3,5)
for tip in Tip.objects.filter(week_number__in=weeks):
#do something
感謝!它是我甚至沒有想到的更好的方式。 – user170302 2010-03-05 11:06:41
這不起作用或者: tip_msg =提示.objects.filter(類別= 2).order_by( 「WEEK_NUMBER」)[I] 及其彷彿Django的對待i設定爲即使當我使用int(i)非整數這仍然會失敗。 – user170302 2010-03-04 01:31:51