Dal filter
restituisce un QuerySet
, è possibile utilizzare count per controllare quanti risultati sono stati restituiti. Questo presuppone che in realtà non hai bisogno dei risultati.
num_results = User.objects.filter(email = cleaned_info['username']).count()
Dopo aver esaminato la documentazione però, è meglio chiamare solo len sul vostro filtro se si sta pensando di usare i risultati dopo, mentre sarete fare solo interrogazione uno sql:
Una chiamata count() esegue un SELECT COUNT (*) dietro le quinte, quindi dovresti sempre usare count() piuttosto che caricare tutto il record in oggetti Python e chiamare len() sul risultato (a meno che tu non debba caricare gli oggetti nella memoria comunque, nel qual caso len() sarà più veloce).
num_results = len(user_object)
non lo faccio capire cosa stai cercando di fare. Stai cercando di verificare se un utente esiste già al fine di generare un errore? Perché hai bisogno di controllarlo? E perché stai facendo questo in una "vista modulo"? Prova a rispondere a questa domanda per vedere se possiamo aiutarti meglio ... Aggiungi un contesto al tuo problema, non solo la domanda che hai in mente. A volte il problema che pensi di avere non è il vero problema, quindi la tua domanda non è corretta ... – marianobianchi
Possibile duplicato di [qual è il modo giusto per convalidare se un oggetto esiste in una vista django senza restituire 404?] (http://stackoverflow.com/questions/639836/what-is-the-right-way-to-validate-if-an-object-exists-in-a-django-view-without-r) – Wtower