I modelli cancellati si presentano ancora come scelte ContentType in Django?
-
13-12-2019 - |
Domanda
Sto limitando le scelte ContentType per una relazione generica utilizzando limit_choices_to
ma mostra modelli che non esistono più. Ad esempio con questo codice:
employer_content_type = models.ForeignKey(ContentType,
limit_choices_to={"model__in": ('venue', 'festival')}, related_name="employer")
.
Ottengo un elenco di scelte che hanno duplicati, I.e. Festival, Festival, Sede, Venue
Tuttavia quando limita le scelte per app piuttosto solo modelli come questo:
employer_content_type = models.ForeignKey(ContentType,
limit_choices_to={'app_label': 'contacts'}, related_name="employer")
.
Ho un elenco di tutti i modelli senza duplicati, I.e. Indirizzo, Email, Festival, Sede
A un certo punto nel mio sviluppo ho creato una nuova app ("Contatti") Era un duplicato di un'app precedente. Tutti i modelli avevano gli stessi nomi ecc. All'inizio pensavo che questo stesse causando i duplicati, ma il problema non è andato via dopo aver rimosso la vecchia app da impostazioni.py ed eliminato i vecchi modelli formano il database. Penso che sia un problema della cache ma non ho mai impostato la cache!
Allora, come posso cancellare la cache o limitare le scelte per modello e app contemporaneamente.
Grazie per il tuo aiuto!
Nota: Purtroppo non potrei aggiungere immagini così è un po 'difficile da descrivere!
Soluzione
Cerca la tabella del DB CONTTIPES_CONTENTYPEPE e DELETE Elimina i modelli obsoleti.SyncDB dovrebbe anche richiedere di eliminare i modelli obsoleti dalla tabella del tipo di contenuto.