Projet

Général

Profil

0001-misc-add-explicit-on_delete-on-all-FKs-36608.patch

Lauréline Guérin, 02 octobre 2019 14:49

Télécharger (26,4 ko)

Voir les différences:

Subject: [PATCH 1/4] misc: add explicit on_delete on all FKs (#36608)

RemovedInDjango20Warning: on_delete will be a required arg for ForeignKey in Django 2.0.
Set it to models.CASCADE on models and in existing migrations if you want to maintain the
current default behavior.
See https://docs.djangoproject.com/en/1.11/ref/models/fields/#django.db.models.ForeignKey.on_delete
 passerelle/apps/astregs/models.py                  |  2 +-
 .../apps/csvdatasource/migrations/0007_query.py    |  2 +-
 passerelle/apps/csvdatasource/models.py            |  4 ++--
 passerelle/apps/family/migrations/0001_initial.py  | 14 +++++++-------
 .../family/migrations/0003_auto_20161021_0333.py   |  2 +-
 passerelle/apps/family/models.py                   | 12 ++++++------
 passerelle/apps/gesbac/models.py                   |  2 +-
 .../migrations/0002_jsondata_datastore.py          |  2 +-
 passerelle/apps/jsondatastore/models.py            |  2 +-
 passerelle/apps/mdel/migrations/0001_initial.py    |  2 +-
 passerelle/apps/mdel/models.py                     |  2 +-
 passerelle/apps/phonecalls/models.py               |  2 +-
 passerelle/apps/solis/migrations/0001_initial.py   |  2 +-
 passerelle/apps/solis/models.py                    |  4 ++--
 passerelle/apps/sp_fr/models.py                    |  6 ++++--
 passerelle/base/migrations/0001_initial.py         |  4 ++--
 passerelle/base/migrations/0006_resourcestatus.py  |  2 +-
 passerelle/base/models.py                          | 12 ++++++------
 .../contrib/agoraplus/migrations/0001_initial.py   |  2 +-
 .../agoraplus/migrations/0002_agoraplussas.py      |  2 +-
 passerelle/contrib/agoraplus/models.py             |  4 ++--
 .../contrib/dpark/migrations/0001_initial.py       |  2 +-
 passerelle/contrib/dpark/models.py                 |  2 +-
 passerelle/contrib/planitech/models.py             |  2 +-
 .../teamnet_axel/migrations/0001_initial.py        |  2 +-
 .../teamnet_axel/migrations/0006_rename_model_2.py |  2 +-
 passerelle/contrib/teamnet_axel/models.py          |  2 +-
 27 files changed, 50 insertions(+), 48 deletions(-)
passerelle/apps/astregs/models.py
645 645

  
646 646

  
647 647
class Link(models.Model):
648
    resource = models.ForeignKey(AstreGS)
648
    resource = models.ForeignKey(AstreGS, on_delete=models.CASCADE)
649 649
    name_id = models.CharField(max_length=32)
650 650
    association_id = models.CharField(max_length=32)
651 651
    created = models.DateTimeField(auto_now_add=True)
passerelle/apps/csvdatasource/migrations/0007_query.py
21 21
                ('order', models.TextField(help_text='Columns to use for sorting rows', verbose_name='Sort Order', blank=True)),
22 22
                ('distinct', models.TextField(help_text='Distinct columns', verbose_name='Distinct', blank=True)),
23 23
                ('structure', models.CharField(default=b'dict', help_text='Data structure used for the response', max_length=20, verbose_name='Structure', choices=[(b'array', 'Array'), (b'dict', 'Dictionary'), (b'tuples', 'Tuples'), (b'onerow', 'Single Row'), (b'one', 'Single Value')])),
24
                ('resource', models.ForeignKey(to='csvdatasource.CsvDataSource')),
24
                ('resource', models.ForeignKey(to='csvdatasource.CsvDataSource', on_delete=models.CASCADE)),
25 25
            ],
26 26
            options={
27 27
                'ordering': ['slug'],
passerelle/apps/csvdatasource/models.py
59 59

  
60 60

  
61 61
class Query(models.Model):
62
    resource = models.ForeignKey('CsvDataSource')
62
    resource = models.ForeignKey('CsvDataSource', on_delete=models.CASCADE)
63 63
    slug = models.SlugField(_('Name (slug)'))
64 64
    label = models.CharField(_('Label'), max_length=100)
65 65
    description = models.TextField(_('Description'), blank=True)
......
429 429

  
430 430

  
431 431
class TableRow(models.Model):
432
    resource = models.ForeignKey('CsvDataSource')
432
    resource = models.ForeignKey('CsvDataSource', on_delete=models.CASCADE)
433 433
    line_number = models.IntegerField(null=False)
434 434
    data = jsonfield.JSONField(blank=True)
435 435

  
passerelle/apps/family/migrations/0001_initial.py
68 68
            fields=[
69 69
                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
70 70
                ('name_id', models.CharField(max_length=256)),
71
                ('family', models.ForeignKey(to='family.Family')),
71
                ('family', models.ForeignKey(to='family.Family', on_delete=models.CASCADE)),
72 72
            ],
73 73
        ),
74 74
        migrations.CreateModel(
......
100 100
                ('payment_date', models.DateTimeField(null=True, verbose_name='Payment date')),
101 101
                ('autobilling', models.BooleanField(default=False, verbose_name='Autobilling')),
102 102
                ('payment_transaction_id', models.CharField(max_length=128, null=True, verbose_name='Payment transaction id')),
103
                ('family', models.ForeignKey(to='family.Family')),
104
                ('resource', models.ForeignKey(to='family.GenericFamily')),
103
                ('family', models.ForeignKey(to='family.Family', on_delete=models.CASCADE)),
104
                ('resource', models.ForeignKey(to='family.GenericFamily', on_delete=models.CASCADE)),
105 105
            ],
106 106
            options={
107 107
                'ordering': ['issue_date'],
......
110 110
        migrations.AddField(
111 111
            model_name='familylink',
112 112
            name='resource',
113
            field=models.ForeignKey(to='family.GenericFamily'),
113
            field=models.ForeignKey(to='family.GenericFamily', on_delete=models.CASCADE),
114 114
        ),
115 115
        migrations.AddField(
116 116
            model_name='family',
117 117
            name='resource',
118
            field=models.ForeignKey(to='family.GenericFamily'),
118
            field=models.ForeignKey(to='family.GenericFamily', on_delete=models.CASCADE),
119 119
        ),
120 120
        migrations.AddField(
121 121
            model_name='child',
122 122
            name='family',
123
            field=models.ForeignKey(to='family.Family'),
123
            field=models.ForeignKey(to='family.Family', on_delete=models.CASCADE),
124 124
        ),
125 125
        migrations.AddField(
126 126
            model_name='adult',
127 127
            name='family',
128
            field=models.ForeignKey(to='family.Family'),
128
            field=models.ForeignKey(to='family.Family', on_delete=models.CASCADE),
129 129
        ),
130 130
    ]
passerelle/apps/family/migrations/0003_auto_20161021_0333.py
19 19
        migrations.AlterField(
20 20
            model_name='invoice',
21 21
            name='family',
22
            field=models.ForeignKey(to='family.Family', null=True),
22
            field=models.ForeignKey(to='family.Family', null=True, on_delete=models.CASCADE),
23 23
        ),
24 24
    ]
passerelle/apps/family/models.py
377 377

  
378 378

  
379 379
class FamilyLink(models.Model):
380
    resource = models.ForeignKey('GenericFamily')
380
    resource = models.ForeignKey('GenericFamily', on_delete=models.CASCADE)
381 381
    name_id = models.CharField(max_length=256)
382
    family = models.ForeignKey('Family')
382
    family = models.ForeignKey('Family', on_delete=models.CASCADE)
383 383

  
384 384

  
385 385
class Family(models.Model):
386
    resource = models.ForeignKey('GenericFamily')
386
    resource = models.ForeignKey('GenericFamily', on_delete=models.CASCADE)
387 387
    external_id = models.CharField(_('External id'),
388 388
                max_length=16, db_index=True)
389 389
    login = models.CharField(_('Login'), max_length=64, null=True)
......
405 405

  
406 406

  
407 407
class Person(models.Model):
408
    family = models.ForeignKey('Family')
408
    family = models.ForeignKey('Family', on_delete=models.CASCADE)
409 409
    external_id = models.CharField(_('Person\'s external id'), max_length=32,
410 410
                    db_index=True)
411 411
    first_name = models.CharField(_('First name'), max_length=64)
......
444 444

  
445 445

  
446 446
class Invoice(models.Model):
447
    resource = models.ForeignKey('GenericFamily')
448
    family = models.ForeignKey('Family', null=True)
447
    resource = models.ForeignKey('GenericFamily', on_delete=models.CASCADE)
448
    family = models.ForeignKey('Family', null=True, on_delete=models.CASCADE)
449 449
    external_id = models.CharField(_('External id'), max_length=128, db_index=True)
450 450
    label = models.CharField(_('Label'), max_length=128, null=True)
451 451
    issue_date = models.DateField(_('Issue date'), null=True)
passerelle/apps/gesbac/models.py
424 424

  
425 425

  
426 426
class Form(models.Model):
427
    resource = models.ForeignKey(Gesbac)
427
    resource = models.ForeignKey(Gesbac, on_delete=models.CASCADE)
428 428
    form_id = models.CharField(max_length=64)
429 429
    creation_datetime = models.DateTimeField(auto_now_add=True)
430 430
    filename = models.CharField(max_length=128, null=True)
passerelle/apps/jsondatastore/migrations/0002_jsondata_datastore.py
14 14
        migrations.AddField(
15 15
            model_name='jsondata',
16 16
            name='datastore',
17
            field=models.ForeignKey(to='jsondatastore.JsonDataStore', null=True),
17
            field=models.ForeignKey(to='jsondatastore.JsonDataStore', null=True, on_delete=models.CASCADE),
18 18
        ),
19 19
    ]
passerelle/apps/jsondatastore/models.py
32 32

  
33 33

  
34 34
class JsonData(models.Model):
35
    datastore = models.ForeignKey('JsonDataStore', null=True)
35
    datastore = models.ForeignKey('JsonDataStore', null=True, on_delete=models.CASCADE)
36 36

  
37 37
    uuid = models.CharField(_('uuid'), max_length=32,
38 38
            default=get_hex_uuid, editable=False, unique=True)
passerelle/apps/mdel/migrations/0001_initial.py
38 38
        migrations.AddField(
39 39
            model_name='demand',
40 40
            name='resource',
41
            field=models.ForeignKey(to='mdel.MDEL'),
41
            field=models.ForeignKey(to='mdel.MDEL', on_delete=models.CASCADE),
42 42
        ),
43 43
        migrations.AlterUniqueTogether(
44 44
            name='demand',
passerelle/apps/mdel/models.py
154 154
class Demand(models.Model):
155 155
    created_at = models.DateTimeField(auto_now_add=True)
156 156
    updated_at = models.DateTimeField(auto_now=True)
157
    resource = models.ForeignKey(MDEL)
157
    resource = models.ForeignKey(MDEL, on_delete=models.CASCADE)
158 158
    num = models.CharField(
159 159
        max_length=64, null=False, primary_key=True, unique=True)
160 160
    flow_type = models.CharField(max_length=32, null=False)
passerelle/apps/phonecalls/models.py
116 116

  
117 117

  
118 118
class Call(models.Model):
119
    resource = models.ForeignKey(PhoneCalls)
119
    resource = models.ForeignKey(PhoneCalls, on_delete=models.CASCADE)
120 120
    callee = models.CharField(blank=False, max_length=64)
121 121
    caller = models.CharField(blank=False, max_length=64)
122 122
    start_timestamp = models.DateTimeField(auto_now_add=True)
passerelle/apps/solis/migrations/0001_initial.py
35 35
                ('name_id', models.CharField(max_length=256)),
36 36
                ('user_id', models.CharField(max_length=64)),
37 37
                ('code', models.CharField(max_length=64)),
38
                ('resource', models.ForeignKey(to='solis.Solis')),
38
                ('resource', models.ForeignKey(to='solis.Solis', on_delete=models.CASCADE)),
39 39
            ],
40 40
        ),
41 41
    ]
passerelle/apps/solis/models.py
611 611

  
612 612

  
613 613
class SolisAPALink(models.Model):
614
    resource = models.ForeignKey(Solis)
614
    resource = models.ForeignKey(Solis, on_delete=models.CASCADE)
615 615
    name_id = models.CharField(blank=False, max_length=256)
616 616
    user_id = models.CharField(blank=False, max_length=64)
617 617
    code = models.CharField(blank=False, max_length=64)
......
619 619

  
620 620

  
621 621
class SolisRSALink(models.Model):
622
    resource = models.ForeignKey(Solis)
622
    resource = models.ForeignKey(Solis, on_delete=models.CASCADE)
623 623
    name_id = models.CharField(blank=False, max_length=256)
624 624
    user_id = models.CharField(blank=False, max_length=64)
625 625
    code = models.CharField(blank=False, max_length=64)
passerelle/apps/sp_fr/models.py
524 524
    resource = models.ForeignKey(
525 525
        Resource,
526 526
        verbose_name=_('Resource'),
527
        related_name='mappings')
527
        related_name='mappings',
528
        on_delete=models.CASCADE)
528 529

  
529 530
    procedure = models.CharField(
530 531
        verbose_name=_('Procedure'),
......
649 650

  
650 651
    resource = models.ForeignKey(
651 652
        Resource,
652
        verbose_name=_('Resource'))
653
        verbose_name=_('Resource'),
654
        on_delete=models.CASCADE)
653 655

  
654 656
    created = models.DateTimeField(
655 657
        verbose_name=_('Created'),
passerelle/base/migrations/0001_initial.py
52 52
        migrations.AddField(
53 53
            model_name='accessright',
54 54
            name='apiuser',
55
            field=models.ForeignKey(to='base.ApiUser', verbose_name='API User'),
55
            field=models.ForeignKey(to='base.ApiUser', verbose_name='API User', on_delete=models.CASCADE),
56 56
            preserve_default=True,
57 57
        ),
58 58
        migrations.AddField(
59 59
            model_name='accessright',
60 60
            name='resource_type',
61
            field=models.ForeignKey(to='contenttypes.ContentType'),
61
            field=models.ForeignKey(to='contenttypes.ContentType', on_delete=models.CASCADE),
62 62
            preserve_default=True,
63 63
        ),
64 64
    ]
passerelle/base/migrations/0006_resourcestatus.py
20 20
                ('start_timestamp', models.DateTimeField(auto_now_add=True)),
21 21
                ('status', models.CharField(default=b'unknown', max_length=20, choices=[(b'unknown', 'Unknown'), (b'up', 'Up'), (b'down', 'Down')])),
22 22
                ('message', models.CharField(max_length=500, blank=True)),
23
                ('resource_type', models.ForeignKey(to='contenttypes.ContentType')),
23
                ('resource_type', models.ForeignKey(to='contenttypes.ContentType', on_delete=models.CASCADE)),
24 24
            ],
25 25
            options={
26 26
                'ordering': ['-start_timestamp'],
passerelle/base/models.py
554 554

  
555 555
class AccessRight(models.Model):
556 556
    codename = models.CharField(max_length=100, verbose_name='codename')
557
    resource_type = models.ForeignKey(ContentType)
557
    resource_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
558 558
    resource_pk = models.PositiveIntegerField()
559 559
    resource = fields.GenericForeignKey('resource_type', 'resource_pk')
560
    apiuser = models.ForeignKey(ApiUser, verbose_name=_('API User'))
560
    apiuser = models.ForeignKey(ApiUser, verbose_name=_('API User'), on_delete=models.CASCADE)
561 561

  
562 562
    class Meta:
563 563
        permissions = (
......
572 572

  
573 573

  
574 574
class LoggingParameters(models.Model):
575
    resource_type = models.ForeignKey(ContentType)
575
    resource_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
576 576
    resource_pk = models.PositiveIntegerField()
577 577
    resource = fields.GenericForeignKey('resource_type', 'resource_pk')
578 578
    log_level = models.CharField(
......
618 618

  
619 619

  
620 620
class AvailabilityParameters(models.Model):
621
    resource_type = models.ForeignKey(ContentType)
621
    resource_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
622 622
    resource_pk = models.PositiveIntegerField()
623 623
    resource = fields.GenericForeignKey('resource_type', 'resource_pk')
624 624
    run_check = models.BooleanField(
......
653 653

  
654 654

  
655 655
class Job(models.Model):
656
    resource_type = models.ForeignKey(ContentType)
656
    resource_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
657 657
    resource_pk = models.PositiveIntegerField()
658 658
    resource = fields.GenericForeignKey('resource_type', 'resource_pk')
659 659
    method_name = models.CharField(max_length=50)
......
714 714
)
715 715

  
716 716
class ResourceStatus(models.Model):
717
    resource_type = models.ForeignKey(ContentType)
717
    resource_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
718 718
    resource_pk = models.PositiveIntegerField()
719 719
    start_timestamp = models.DateTimeField(auto_now_add=True)
720 720
    status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='unknown')
passerelle/contrib/agoraplus/migrations/0001_initial.py
39 39
                ('name_id', models.CharField(max_length=256)),
40 40
                ('login', models.CharField(max_length=128)),
41 41
                ('password', models.CharField(max_length=128)),
42
                ('resource', models.ForeignKey(to='agoraplus.AgoraPlus')),
42
                ('resource', models.ForeignKey(to='agoraplus.AgoraPlus', on_delete=models.CASCADE)),
43 43
            ],
44 44
            options={
45 45
            },
passerelle/contrib/agoraplus/migrations/0002_agoraplussas.py
20 20
                ('kind', models.CharField(max_length=16, choices=[(b'ADULT', b'ADULT'), (b'CHILD', b'CHILD'), (b'CONTACT', b'CONTACT')])),
21 21
                ('agoraplus_id', models.CharField(max_length=16, blank=True)),
22 22
                ('value', jsonfield.fields.JSONField(default=dict, blank=True)),
23
                ('resource', models.ForeignKey(to='agoraplus.AgoraPlus')),
23
                ('resource', models.ForeignKey(to='agoraplus.AgoraPlus', on_delete=models.CASCADE)),
24 24
            ],
25 25
            options={
26 26
            },
passerelle/contrib/agoraplus/models.py
1014 1014
    '''
1015 1015
    Link between a Publik user (name_id) and a Agora+ user (login/password)
1016 1016
    '''
1017
    resource = models.ForeignKey(AgoraPlus)
1017
    resource = models.ForeignKey(AgoraPlus, on_delete=models.CASCADE)
1018 1018
    name_id = models.CharField(blank=False, max_length=256)  # Publik user key
1019 1019
    login = models.CharField(blank=False, max_length=128)    # Agora+ user key
1020 1020
    password = models.CharField(blank=False, max_length=128) # Agora+ auth
......
1032 1032
    '''
1033 1033
    Stores informations before sending in Agora +
1034 1034
    '''
1035
    resource = models.ForeignKey(AgoraPlus)
1035
    resource = models.ForeignKey(AgoraPlus, on_delete=models.CASCADE)
1036 1036
    name_id = models.CharField(blank=False, max_length=256)  # Publik user key
1037 1037
    kind = models.CharField(blank=False, max_length=16, choices=SAS_KIND_OF_VALUES)
1038 1038
    agoraplus_id = models.CharField(blank=True, max_length=16)
passerelle/contrib/dpark/migrations/0001_initial.py
37 37
                ('filenumber', models.CharField(max_length=128)),
38 38
                ('badgenumber', models.CharField(max_length=128)),
39 39
                ('cardnumber', models.CharField(max_length=128)),
40
                ('resource', models.ForeignKey(to='dpark.DPark')),
40
                ('resource', models.ForeignKey(to='dpark.DPark', on_delete=models.CASCADE)),
41 41
            ],
42 42
        ),
43 43
    ]
passerelle/contrib/dpark/models.py
487 487
    INFO_CACHE_DURATION = 5 * 60
488 488
    PAYMENT_INFO_CACHE_DURATION = 20 * 60
489 489

  
490
    resource = models.ForeignKey(DPark)
490
    resource = models.ForeignKey(DPark, on_delete=models.CASCADE)
491 491
    nameid = models.CharField(blank=False, max_length=256)
492 492
    lastname = models.CharField(blank=False, max_length=128)
493 493
    firstnames = models.CharField(blank=False, max_length=128)
passerelle/contrib/planitech/models.py
822 822
    class Meta:
823 823
        unique_together = (('resource', 'name_id'), ('resource', 'external_id'),)
824 824

  
825
    resource = models.ForeignKey(PlanitechConnector)
825
    resource = models.ForeignKey(PlanitechConnector, on_delete=models.CASCADE)
826 826
    name_id = models.CharField(blank=False, max_length=256)
827 827
    external_id = models.CharField(blank=False, max_length=256)
828 828
    created = models.DateTimeField(auto_now_add=True)
passerelle/contrib/teamnet_axel/migrations/0001_initial.py
45 45
        migrations.AddField(
46 46
            model_name='link',
47 47
            name='resource',
48
            field=models.ForeignKey(to='teamnet_axel.Management'),
48
            field=models.ForeignKey(to='teamnet_axel.Management', on_delete=models.CASCADE),
49 49
            preserve_default=True,
50 50
        ),
51 51
    ]
passerelle/contrib/teamnet_axel/migrations/0006_rename_model_2.py
14 14
        migrations.AlterField(
15 15
            model_name='link',
16 16
            name='resource',
17
            field=models.ForeignKey(to='teamnet_axel.TeamnetAxel'),
17
            field=models.ForeignKey(to='teamnet_axel.TeamnetAxel', on_delete=models.CASCADE),
18 18
        ),
19 19
    ]
passerelle/contrib/teamnet_axel/models.py
351 351

  
352 352

  
353 353
class Link(models.Model):
354
    resource = models.ForeignKey(TeamnetAxel)
354
    resource = models.ForeignKey(TeamnetAxel, on_delete=models.CASCADE)
355 355
    nameid = models.CharField(blank=False, max_length=256)
356 356
    login = models.CharField(blank=False, max_length=128)
357 357
    pwd = models.CharField(blank=False, max_length=128)
358
-