Commit 86e621f
committed
[IMP] _change_foreign_key_refs: Add extra_where params
Adding the new argument `extra_where`, we are able to change a FK
reference depending on an extra condition, so not all ocurrences are
replaced.
This is useful for example when we have a unique record for all
companies, and on new version, there should be one record per company.
We perform the split, and we need to replace references for only
a specific company (extra_where="AND company_id = X").
Retro-compatibility is kept as the argument is optional, and a safeguard
has been introduced for skipping models where the condition can't be
fulfilled if the field doesn't exist (so we are not able to say if
the reference should be replaced or not).
TT281151 parent 5b374a2 commit 86e621f
1 file changed
+16
-9
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
42 | 51 | | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
| 52 | + | |
49 | 53 | | |
50 | 54 | | |
51 | 55 | | |
52 | 56 | | |
53 | 57 | | |
54 | 58 | | |
55 | | - | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
56 | 63 | | |
57 | 64 | | |
58 | 65 | | |
| |||
0 commit comments