Ho un metodo has_related_object
nel mio modello che ha bisogno di controllare se un oggetto correlato esistecontrollare Django se un oggetto correlato esiste errore: RelatedObjectDoesNotExist
class Business(base):
name = models.CharField(max_length=100, blank=True, null=True)
def has_related_object(self):
return (self.customers is not None) and (self.car is not None)
class Customer(base):
name = models.CharField(max_length=100, blank=True, null=True)
person = models.OneToOneField('Business', related_name="customer")
ma ho l'errore:
Business.has_related_object()
RelatedObjectDoesNotExist: Business has no customer.
nota che, secondo il documento (https://docs.djangoproject.com/en/1.9/ref/models/fields/ # database-representation), "[...] il tuo codice non dovrebbe mai avere a che fare con il nome della colonna del database, a meno che tu non scriva SQL personalizzato. Tratterai sempre con i nomi dei campi del tuo oggetto modello.". –
Questo è un approccio più veloce dell'altra risposta, poiché non richiede la comunicazione con il database. – Dan