﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
30436	on_delete attribute must be callable.	Rémy Hubscher	robinh00d	"If you set `on_delete=None` as a ForeignKey field parameter you might get the following error:

{{{
  File ""django/contrib/admin/options.py"", line 1823, in get_deleted_objects
    return get_deleted_objects(objs, request, self.admin_site)
  File ""django/contrib/admin/utils.py"", line 134, in get_deleted_objects
    collector.collect(objs)
  File ""django/contrib/admin/utils.py"", line 197, in collect
    return super().collect(objs, source_attr=source_attr, **kwargs)
  File ""django/db/models/deletion.py"", line 221, in collect
    field.remote_field.on_delete(self, field, sub_objs, self.using)

TypeError: 'NoneType' object is not callable
}}}

I believe that we could validate the on_delete value to prevent such behaviour. Or at least tell that None is not a valid on_delete value.

Refs https://docs.djangoproject.com/fr/2.2/ref/models/fields/#django.db.models.ForeignKey.on_delete"	Cleanup/optimization	closed	Database layer (models, ORM)	dev	Normal	fixed			Accepted	1	0	0	0	0	0
