Cosa fa on_delete sui modelli Django?

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

Conosco abbastanza Django, ma di recente ho notato che esiste un'opzione on_delete=models.CASCADE con i modelli. Ho cercato la documentazione per lo stesso, ma non ci sono riuscito trova qualcosa in più di:

Cambiato in Django 1.9:

on_delete ora può essere usato come secondo posizionale argomento (in precedenza veniva generalmente passato solo come argomento di una parola chiave). Sarà un argomento obbligatorio in Django 2.0.

Un esempio di utilizzo è:

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

Cosa fa on_delete? (Immagino le azioni da eseguire se il modello viene eliminato.)

Cosa fa models.CASCADE? (qualsiasi suggerimento nella documentazione)

Quali altre opzioni sono disponibili (se la mia ipotesi è corretta)?

Da dove viene il documentazione per questo risiedere?