Que fait on_delete sur les modèles Django ?

| | | | | | | | | | | | | |

Je suis assez familier avec Django, mais j'ai récemment remarqué qu'il existe une option on_delete=models.CASCADE avec les modèles. J'ai cherché la documentation pour le même, mais je ne pouvais pas trouver rien de plus que :

Modifié dans Django 1.9 :

on_delete peut maintenant être utilisé comme deuxième position argument (auparavant, il n'était généralement transmis qu'en tant qu'argument de mot-clé). Ce sera un argument obligatoire dans Django 2.0.

Un exemple d'utilisation est :

from django.db import models class Car(models.Model): manufacturer = models. ForeignKey( "Manufacturer", on_delete=models.CASCADE, ) # ... class Manufacturer(models.Model): # ... pass 

Que fait on_delete ? (Je suppose que les actions à faire si le modèle est supprimé.)

Que fait models.CASCADE ? (des indices dans la documentation)

Quelles sont les autres options disponibles (si ma supposition est correcte) ?

Où se trouve le documentation pour ce résident ?