agendas: change on_delete for Agenda -> EventsType to SET_NULL (#85974)
This commit is contained in:
parent
9c660e7a1e
commit
d428ef8385
|
@ -0,0 +1,25 @@
|
|||
# Generated by Django 3.2.18 on 2024-01-22 10:55
|
||||
|
||||
import django.db.models.deletion
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
('agendas', '0169_urlfield_maxlength_increase'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='agenda',
|
||||
name='events_type',
|
||||
field=models.ForeignKey(
|
||||
blank=True,
|
||||
null=True,
|
||||
on_delete=django.db.models.deletion.SET_NULL,
|
||||
related_name='agendas',
|
||||
to='agendas.eventstype',
|
||||
verbose_name='Events type',
|
||||
),
|
||||
),
|
||||
]
|
|
@ -278,7 +278,7 @@ class Agenda(models.Model):
|
|||
events_type = models.ForeignKey(
|
||||
'agendas.EventsType',
|
||||
verbose_name=_('Events type'),
|
||||
on_delete=models.CASCADE,
|
||||
on_delete=models.SET_NULL,
|
||||
related_name='agendas',
|
||||
null=True,
|
||||
blank=True,
|
||||
|
|
|
@ -162,6 +162,20 @@ def test_delete_events_type(app, admin_user):
|
|||
assert EventsType.objects.exists() is False
|
||||
|
||||
|
||||
def test_delete_referenced_events_type(app):
|
||||
events_type = EventsType.objects.create(label='Foobar')
|
||||
events_type.save()
|
||||
|
||||
agenda = Agenda(label='Foo Bar', events_type=events_type)
|
||||
agenda.save()
|
||||
|
||||
events_type.delete()
|
||||
|
||||
agenda = Agenda.objects.get(pk=agenda.pk)
|
||||
assert agenda
|
||||
assert agenda.events_type is None
|
||||
|
||||
|
||||
def test_delete_events_type_as_manager(app, manager_user):
|
||||
agenda = Agenda(label='Foo Bar')
|
||||
agenda.view_role = manager_user.groups.all()[0]
|
||||
|
|
Loading…
Reference in New Issue