Commit 9d1356b
* fix OnDelete and OnUpdate in migrations
* fix test docstring
* remove for loop
* refactor `add_foreign_key_constraint`
If a `ForeignKey` is passed in, we can get most of the info we need from it, rather than requiring additional params to be passed in.
* add `get_fk_constraint_name`
* rename pk constraint on table renaming in migrations
* `RenamePkConstraint` -> `RenameConstraint`
* skip renaming pk constraint in SQLite
* revert changes
* update param names in `rename_constraint` method
* add docstring
* add `get_fk_constraint_rules` function
So the logic for getting constraints is centralised.
* add TODO for supporting SQLite
* add TODO for moving logic from `generate.py` to `constraints.py`
* remove redundant lookup in `generate.py`
We should refactor a bunch of this - I came across this dict lookup, which isn't required because we can just call the enum directly.
---------
Co-authored-by: Daniel Townsend <[email protected]>
1 parent 7cbd871 commit 9d1356b
File tree
8 files changed
+276
-67
lines changed- piccolo
- apps
- migrations/auto
- schema/commands
- query
- methods
- utils
- tests
- apps/migrations/auto
- columns/foreign_key
8 files changed
+276
-67
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
| |||
423 | 424 | | |
424 | 425 | | |
425 | 426 | | |
426 | | - | |
427 | | - | |
| 427 | + | |
| 428 | + | |
428 | 429 | | |
429 | 430 | | |
430 | 431 | | |
| |||
534 | 535 | | |
535 | 536 | | |
536 | 537 | | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
537 | 571 | | |
538 | 572 | | |
539 | 573 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
501 | 501 | | |
502 | 502 | | |
503 | 503 | | |
| 504 | + | |
| 505 | + | |
504 | 506 | | |
505 | 507 | | |
506 | 508 | | |
| |||
537 | 539 | | |
538 | 540 | | |
539 | 541 | | |
540 | | - | |
541 | | - | |
542 | | - | |
543 | | - | |
544 | | - | |
545 | | - | |
546 | | - | |
547 | | - | |
548 | | - | |
549 | | - | |
550 | | - | |
551 | | - | |
552 | | - | |
553 | | - | |
554 | | - | |
555 | | - | |
556 | | - | |
557 | 542 | | |
558 | 543 | | |
559 | 544 | | |
| |||
765 | 750 | | |
766 | 751 | | |
767 | 752 | | |
768 | | - | |
769 | | - | |
| 753 | + | |
| 754 | + | |
770 | 755 | | |
771 | 756 | | |
772 | 757 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
39 | 51 | | |
40 | 52 | | |
41 | 53 | | |
| |||
194 | 206 | | |
195 | 207 | | |
196 | 208 | | |
| 209 | + | |
197 | 210 | | |
198 | 211 | | |
199 | 212 | | |
200 | 213 | | |
201 | 214 | | |
202 | 215 | | |
203 | 216 | | |
| 217 | + | |
204 | 218 | | |
205 | 219 | | |
206 | | - | |
207 | 220 | | |
208 | 221 | | |
209 | 222 | | |
| |||
273 | 286 | | |
274 | 287 | | |
275 | 288 | | |
276 | | - | |
277 | 289 | | |
| 290 | + | |
278 | 291 | | |
279 | 292 | | |
280 | 293 | | |
| |||
288 | 301 | | |
289 | 302 | | |
290 | 303 | | |
| 304 | + | |
291 | 305 | | |
292 | 306 | | |
293 | 307 | | |
| |||
307 | 321 | | |
308 | 322 | | |
309 | 323 | | |
| 324 | + | |
310 | 325 | | |
311 | 326 | | |
312 | 327 | | |
| |||
372 | 387 | | |
373 | 388 | | |
374 | 389 | | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
375 | 408 | | |
376 | 409 | | |
377 | 410 | | |
| |||
488 | 521 | | |
489 | 522 | | |
490 | 523 | | |
491 | | - | |
| 524 | + | |
492 | 525 | | |
493 | 526 | | |
494 | 527 | | |
| |||
500 | 533 | | |
501 | 534 | | |
502 | 535 | | |
503 | | - | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
504 | 540 | | |
505 | 541 | | |
506 | 542 | | |
507 | 543 | | |
508 | | - | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
509 | 547 | | |
510 | 548 | | |
511 | | - | |
512 | 549 | | |
513 | 550 | | |
514 | 551 | | |
515 | 552 | | |
516 | 553 | | |
517 | 554 | | |
518 | | - | |
519 | 555 | | |
520 | 556 | | |
521 | 557 | | |
522 | 558 | | |
523 | | - | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
524 | 562 | | |
525 | 563 | | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
526 | 580 | | |
527 | 581 | | |
528 | 582 | | |
529 | 583 | | |
530 | 584 | | |
| 585 | + | |
531 | 586 | | |
532 | 587 | | |
533 | | - | |
534 | 588 | | |
535 | 589 | | |
536 | 590 | | |
| |||
579 | 633 | | |
580 | 634 | | |
581 | 635 | | |
| 636 | + | |
582 | 637 | | |
583 | 638 | | |
| 639 | + | |
584 | 640 | | |
| 641 | + | |
585 | 642 | | |
586 | 643 | | |
587 | 644 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
9 | 13 | | |
10 | 14 | | |
11 | 15 | | |
| |||
20 | 24 | | |
21 | 25 | | |
22 | 26 | | |
23 | | - | |
| 27 | + | |
24 | 28 | | |
0 commit comments