You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
First of all this library has been so useful. It's exactly what I needed and works really well. There is only one issue.
It seems to be detecting changes that aren't occurring. At first I thought the model was adding zeros or the db was removing them. But after some digging I think it's a bug with django-auditlog.
It thinks a change occurred anytime I save this record: it thinks that I started with .00 and changed it to .0. But .00 is the existing value and I didn't change anything. I just saved() the record.
I checked the output of the form itself in the clean() method:
services_sub_total
44.00
sum_payments
33.00
And then in the database:
I just cant figure out where/why this is detecting only one zero in the decimal place - I'm not seeing that .0 anywhere.
Could the delta functions be truncating multiple zeros in the decimals to .0?
The text was updated successfully, but these errors were encountered:
If you look up into source you would see that it compares these two values not as field values but through use of smart_text values are converted to string inside get_field_value
So it basically compares "44.00" and your value of "44.0" and this is different string so it is triggered as change
Not sure if this is by design as in my eyes would be considered bug
Thanks for digging into that and providing the file and line! I will hack it for now. Hopefully it is fixed here (I'm sure my way will not be the best).
Liamhanninen
added a commit
to Liamhanninen/django-auditlog
that referenced
this issue
Sep 6, 2020
First of all this library has been so useful. It's exactly what I needed and works really well. There is only one issue.
It seems to be detecting changes that aren't occurring. At first I thought the model was adding zeros or the db was removing them. But after some digging I think it's a bug with django-auditlog.
It thinks a change occurred anytime I save this record: it thinks that I started with .00 and changed it to .0. But .00 is the existing value and I didn't change anything. I just saved() the record.
I checked the output of the form itself in the clean() method:
And then in the database:
I just cant figure out where/why this is detecting only one zero in the decimal place - I'm not seeing that .0 anywhere.
Could the delta functions be truncating multiple zeros in the decimals to .0?
The text was updated successfully, but these errors were encountered: