比较时,Django日期字段永远不会等于

时间:2019-05-29 21:46:48

标签: python django django-models

我有一个模型对象的两个实例,如果它们在一个字段中不同,我想做一些事情,恰好是一个 DateField ,但是,当我评估它们是否不同时,它们总是即使日期相同。

这是执行比较的代码:

for field in fields:
    if 'name' in field.__dict__:
        field_name = field.__dict__['name']

        if field_name in instance.__dict__:
            new_value = instance.__dict__[field_name]
            old_value = old_instance.__dict__[field_name]

            if new_value != old_value: # This line always avaluates true when fields are DateField
                print("{} - {}".format(old_value, new_value))
                if first:
                    first = None
                else:
                    detail = detail + '\n'

                    detail = detail + field_name + ' = ' + str(old_value) + ' --> ' + str(new_value)

我正在打印new_valueold_value进行调试,我发现日期字段的求值总是不同的,即使它们具有相同的日期:

enter image description here

我不知道是否有一种比较日期值的特定方法。

0 个答案:

没有答案