Sto utilizzando il Django REST Framework 2.0.ForeignKey non consente valori nulli
Qui è la mia classe del modello:
class Mission(models.Model):
assigned_to = models.ForeignKey('auth.User',
related_name='missions_assigned',
blank = True)
Qui è la mia classe di visualizzazione:
class MissionList(generics.ListCreateAPIView):
model = Mission
serialize_class = MissionSerializer
Il modulo multipart è visualizzato nel browser con scelta vuoto per
assigned_to
campo.Quando postate JSON cruda, ricevo il seguente messaggio di errore:
Cannot assign None: "Mission.assigned_to" does not allow null values.
Il che significa 'vuoto = True 'deve sempre essere usato con' null = True'? Perché non posso scegliere vuoto nella mia forma? Ho usato 'blank = True'. –
'assigned_to == None' ha passato il validatore del modulo, ma non il database. Senza 'null = True', non è possibile scrivere' Nessuno' nel database. Quindi, in generale, se si desidera un campo facoltativo, impostare sia 'blank' che' null' su 'True'. – user1034937
Tuttavia, ci sono due eccezioni, l'opzione 'default' e campi tipo stringa. (Vorrei aggiungere dopo il post, invece di qui, il commento.) – user1034937