Вопрос по python – Как отключить модули администрирования Django Celery?

8

У меня нет необходимости в модулях сельдерея в моем админке Django. Есть ли способ, которым я мог бы удалить это?

Ваш Ответ

2   ответа
20

admin.py любого приложения внутриINSTALLED_APPS after '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)
@ mh00h См. комментарий выше и проверьте, является ли это проблемой.
У меня тоже есть эта проблема. Это больше не правильное решение.
я получилNotRegistered at /admin/ The model TaskState is not registered, Но я все еще вижу это в админке.
Сначала вы должны импортировать djcelery.admin, ребята.
@goliney Я проверил это на последней версии djcelery (3.1.1), и она работает. Пожалуйста, убедитесь, чтоunregister код находится вadmin.py файл любого приложения ПОСЛЕdjcelery вINSTALLED_APPS, В противном случае Django сначала выполнит наш незарегистрированный код и, к сожалению, обнаружит, чтоTaskState не зарегистрирован (потому что он зарегистрирован вadmin.py изdjcelery, который еще не был запущен!).
1

таких как admin.site.unregister (CeleryModelIdoNotWantInAdmin)

Похожие вопросы