2012-05-13 10 views

risposta

19

Per essere più precisi, in admin.py di qualsiasi applicazione all'interno INSTALLED_APPSdopo'djcelery'

from django.contrib import admin 
from djcelery.models import (
    TaskState, WorkerState, PeriodicTask, 
    IntervalSchedule, CrontabSchedule) 

admin.site.unregister(TaskState) 
admin.site.unregister(WorkerState) 
admin.site.unregister(IntervalSchedule) 
admin.site.unregister(CrontabSchedule) 
admin.site.unregister(PeriodicTask) 
+1

mi sono 'NotRegistered a/admin/'' Il modello TaskState non è registrato'. Ma continuo a vederlo in admin. –

+0

Ho anche questo problema. Questa non è più una soluzione adeguata. – mh00h

+4

@goliney Ho controllato questo contro l'ultimo djcelery (3.1.1) e funziona. Assicurati che il codice 'unregister' sia nel file' admin.py' di qualsiasi app che è DOPO 'djcelery' in' INSTALLED_APPS'. Altrimenti Django eseguirà prima il nostro codice di annullamento della registrazione e scoprirà purtroppo che 'TaskState' non è registrato (perché è registrato in' admin.py' di 'djcelery', che non è ancora stato eseguito!). – okm

1

Si può semplicemente annullare la registrazione di modelli celerys come admin.site.unregister (CeleryModelIdoNotWantInAdmin)

Problemi correlati