Changes between Initial Version and Version 1 of Ticket #36847, comment 10
- Timestamp:
- Jan 7, 2026, 1:20:02 PM (45 hours ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #36847, comment 10
initial v1 3 3 We should definitely pass `add=True` as you pointed out for correctness reasons but given we discard the values if they are not expressions this seems more like a way to avoid subtle undefined behavior breakages that we can afford but it doesn't require too much gymnastics on our end. 4 4 5 In other words, I believe that landing a patch here should be seen as a way to correctly invoke the saving machinery (we've historically called `pre_save` with `add=True`) over a long term commitment over model field definition order dictating attribute presence on model instances.5 For example, something else that subtly changed is that we now call `pre_save` twice (in `Model._save_table` and `SQLInsertCompiler.as_sql`) and is something that would require way more invasive changes to address compared to flipping `add=True` to resolve this particular ticket. 6 6 7 For example, something else that subtly changed is that we now call `pre_save` twice (in `Model._save_table` and `SQLInsertCompiler.as_sql`) and is something that would require move invasive changes that flipping `add=True` to resolve.7 I believe that landing a patch here should be seen as a way to correctly invoke the saving machinery (we've historically called `pre_save` with `add=True`) over a long term commitment over model field definition order dictating attribute presence on model instances.