Это работает, частично. Может потребоваться больше информации, однако я подумал, что опубликую, чтобы получить совет по поводу всего очевидного, что может быть здесь неправильным.
Проблема в том, что если activity.get_cost () возвращает значение False
, функция, похоже, завершается полностью, возвращая None
.
Что бы я хотел, конечно, это накапливать cost
Десятичные значения в costs = []
и возвращать их сумму. Все просто, я бы подумал ... но моим начинающим навыкам Python явно что-то не хватает.
Более подробная информация предоставляется по запросу. Спасибо.
def get_jobrecord_cost(self):
costs = []
for activity in self.activity_set.all():
cost = activity.get_cost()
if cost:
costs.append(cost)
if len(costs):
return sum(costs)
else:
return False