Hey,
For the past five years, I've been using Django to manage a database of online applications. I absolutely love it! Makes my job so much easier.
In general, any problems I run into, there's usually an easy workaround. But I wonder if that's even feasible in this case. Anyway, here's the problem: in managing submissions we make a lot of use of the list_editable attribute of ModelAdmin, particularly for status columns. It's extremely handy to be able to load up a list, filter it, and then make status changes to selected records all in one go.
However, there are times when these status columns are also changing on their own, due to what's happening on the front end. I have to be very careful to ensure that this doesn't happen in between when I load an admin list and when I click "Save." If so, then I may end up overwriting the newly changed data, back to what it was when the list was loaded in my browser. This is because all rows are always saved, based on the data in the form inputs from the list.
I propose that a copy of the list_editable values be sent along as a hidden form element (or, alternatively, that Javascript be used to detect values changed in response to user input). That way, in the admin form handler, only rows that have been intended to be changed would be updated to submitted values.
It adds some complexity, sure, but are there any disadvantages I haven't thought of? From my perspective, it would solve a rather frustrating problem.
Thanks,
John Cronan