2010-04-28 13 views
5

Attualmente sto riscontrando un problema quando utilizzo raw_id_field in admin.py nel mio progetto Django.Django - raw_id_fields title not refreshing

L'area di amministrazione del mio sito ha un numero di campi di caricamento dell'immagine per varie pagine di modelli diversi, che sono tutti campi ForeignKey per un modello di immagine in cui sono archiviate tutte le immagini per il sito. Poiché il sito avrà a che fare con una grande quantità di immagini (100s, forse 1000s) la casella di selezione predefinita sarebbe inutilizzabile.

ho creato varie classi admin.ModelAdmin es

class InfoSlideAdmin(admin.ModelAdmin): 
    raw_id_fields=('image',) 

Questi cambiare il selettore di immagine all'interno mie pagine Modifica da un select a un ID campo Raw.

Tuttavia quando si seleziona un'immagine diversa con questo controllo sebbene sia visualizzato l'ID della nuova immagine, il titolo dell'immagine precedente viene ancora visualizzato.

Qualche idea?

risposta

1

Il titolo viene aggiornato tramite Javascript quando si chiude la finestra a comparsa. È possibile che si verifichi una sorta di problema interdominio che impedisce l'esecuzione di JS, a volte accade quando si esegue tramite il server di sviluppo, ad esempio la porta 8080.

Dai un'occhiata a ciò che la console in Firebug ti sta mostrando (tu sono usando Firebug per eseguire il debug dei problemi di Javascript, vero?).

+0

Uso firebug per eseguire il debug di problemi come questo sì. Tuttavia, di solito utilizzo la scheda "Net" e cerco quali file vengono chiamati dalla pagina durante il caricamento. Tuttavia, è possibile utilizzare la scheda Rete solo dopo l'aggiornamento di una pagina e ciò non si verifica quando si utilizza il controllo raw_id. –

0

Io uso firebug per eseguire il debug di problemi come questo sì. Tuttavia, di solito utilizzo la scheda "Net" e cerco quali file vengono chiamati dalla pagina durante il caricamento. Tuttavia, è possibile utilizzare la scheda Rete solo dopo l'aggiornamento di una pagina e ciò non si verifica quando si utilizza il controllo raw_id.