Opened 18 months ago

Last modified 18 months ago

#21295 new New feature

Add on_update support

Reported by: akaariai Owned by: nobody
Component: Database layer (models, ORM) Version: master
Severity: Normal Keywords:
Cc: loic@… Triage Stage: Accepted
Has patch: yes Needs documentation: yes
Needs tests: no Patch needs improvement: yes
Easy pickings: no UI/UX: no

Description

There are cases where on-update cascade support would be useful. Currently Django offers no way to cascade updates.

An experimental patch implementing on_update=models.CASCADE support for foreign keys is available from: https://github.com/akaariai/django/tree/update_cascade. It is based on composite foreign keys branch (https://github.com/akaariai/django/tree/soc2013/composite-fields).

I'll attach a sample project to this ticket. Unpack it, use the above mentioned branch of Django, run syncdb, runserver and try in admin. Note that the country/city names are stored locally in the models, so country name update cascades to cities and from cities to streets.

Attachments (1)

test_composite.tar.gz (6.5 KB) - added by akaariai 18 months ago.
Sample project

Download all attachments as: .zip

Change History (4)

Changed 18 months ago by akaariai

Sample project

comment:1 Changed 18 months ago by akaariai

  • Needs documentation set
  • Needs tests unset
  • Patch needs improvement set

comment:2 Changed 18 months ago by loic84

  • Cc loic@… added

Awesome work.

I just had a brief look at the diff, it will need special handling to be compatible with migrations, my patch for #21275 addresses this issue.

comment:3 Changed 18 months ago by timo

  • Triage Stage changed from Unreviewed to Accepted
Note: See TracTickets for help on using tickets.
Back to Top