繁体   English   中英

此日期检查是否更简洁?

[英]Is there a more succinct for this date checking?

每个发票可能有多个项目,发票到期日是最早到期的日期。 这是我所拥有的,但是我想知道是否可能有一个较短的版本:

due_date = None

for item in i.item_set.all():
    if due_date is None:
        due_date = item.due_date
    else:
        if due_date > item.due_date:
            due_date = item.due_date

您尝试过min吗?

due_date = min((item.due_date for item in i.item_set.all()))

或者,另一个选择:

from operator import attrgetter
due_date = min(i.item_set.all(), key=attrgetter("due_date")).due_date

希望能有所帮助。

由于您使用的是Django,因此可以这样操作:

invoice_date = i.item_set.order_by('due_date')[0].due_date

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM