#7688 closed (invalid)
newforms-admin: need mechanism for further modifying a newly saved object after it has been saved
| Reported by: | simon | Owned by: | nobody |
|---|---|---|---|
| Component: | contrib.admin | Version: | newforms-admin |
| Severity: | Keywords: | ||
| Cc: | Triage Stage: | Design decision needed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description (last modified by )
ModelAdmin.save_add(...) creates a new_object and then returns an HttpResponseRedirect(). It would be really useful if there was a hook for further modifying that object after it had been saved.
It's possible to do this using a custom save() method on the model at the moment, but that has two limitations:
- The save() method doesn't have access to a request object. Admin customisations often involve extra form stuff being passed in as part of the request.
- You might want custom behaviour that only runs on objects created using the admin, not objects created using other means.
Having a post_save_add() method that is passed the request and the newly created object and does nothing by default (but can be over-ridden in ModelAdmin subclasses) would be one way of solving this, but I'm not sure it's the best way.
Change History (5)
comment:1 by , 17 years ago
| Description: | modified (diff) |
|---|
comment:2 by , 17 years ago
| milestone: | → post-1.0 |
|---|---|
| Triage Stage: | Unreviewed → Design decision needed |
comment:3 by , 17 years ago
comment:4 by , 17 years ago
| Resolution: | → invalid |
|---|---|
| Status: | new → closed |
Yes, all the new hooks on ModelAdmin have solved this problem. Marking invalid as it is no longer valid :)
I think this is obsolete. One can use ModelAdmin.response_add for intercepting the data:
def response_add(self, request, obj, *args, **kwargs): response = super(MyModelAdmin, self).response_add(request, obj, *args, **kwargs) if request.method == 'POST': obj.do_something() return responseCan someone close this, if there are no objections ?