Django/Python新手。有一个调用时未完成的函数。没有错误,它只是停止并返回python命令提示符。它执行第一个while循环,但在到达下一个“print”命令之前停止,并将我带回提示符。执行的一切都是正确的。我肯定我错过了一些基本的东西。函数如下:
def create_carpool(family, start_date, end_date, name):
carpool = Carpool()
carpool.name = name
carpool.save()
current_date = start_date
while current_date <= end_date:
print 'Processing ' + current_date.strftime('%m/%d/%Y') + ' going to ' + end_date.strftime('%m/%d/%Y')
if current_date.day not in (5,6):
start_leg = Leg()
start_leg.drive_date = current_date
start_leg.start_time = START_TIME_AM
start_leg.endpoint = ENDPOINT_AM
start_leg.save()
end_leg = Leg()
end_leg.drive_date = current_date
end_leg.start_time = START_TIME_PM
end_leg.endpoint = ENDPOINT_PM
end_leg.save()
carpool.legs.add(start_leg)
carpool.legs.add(end_leg)
current_date += datetime.timedelta(days=1)
print 'Adding driving preferences for all carpool legs.'
num_legs = carpool.legs.all().count()
leg_idx = 0
for leg in carpool.legs.all():
leg_idx += 1
print 'Processing leg #' + str(leg_idx) + ' of ' + str(num_legs)
for rider in Rider.objects.all():
if choice(number_list) >= 4:
leg.riders.add(rider)
for driver in carpool.drivers.all():
drive_preference = DrivingPreference()
drive_preference.leg = leg
drive_preference.driver = family.drivers
drive_preference.preference = choice([1,2,3])
drive_preference.save()
return carpool
我想你可能需要.save()你的carpool对象在添加腿之后-否则腿数可能为零,因为在这个carpool对象上不会有另一个数据库命中。这就可以解释你的跳绳了。在
我认为循环前的腿数是零是对的吗?打印它,然后在添加腿部后尝试.save()处理carpool对象。。。在
只是个预感。在
相关问题 更多 >
编程相关推荐