Мне кажется, что люди стабильно не понимают, зачем и кому нужна админка в Джанго. Джанго построен вокруг собственного ORM. Этот слой абстракции позволяет не работать с БД чистым SQL. Проблема возникает когда (в процессе разработки или эксплуатации) хочется прямого доступа к записям в БД.
Админка это способ организации такого "прямого" (кавычки потому что всё равно через ORM) доступа к записям. Плюс на него можно навесить немного инструментария, который разработчику хотелось бы иметь под рукой. Принудительно сбросить пользователю пароль, удалить какое-то кол-во записей и т.д. Чисто программерские фишки, востребованные в процессе разработки.
Вся конструкция вертится вокруг того, что разработчики админки не знали, какая конкретно у вас будет структура БД. Поэтому там очень многое построено на магии. Но общие решения никогда не заменят специализированные.
Если вам надо дать (избранным) пользователям доступ к каким-то админским функциям для управления сайтом - напишите админку конкретно для них.
Не надо использовать для этого django.contrib.admin,
не надо её
модифицировать или
заменять. Админка Джанги отдельно - прочие мухи отдельно.
Посмотрите на
https://github.com/oscarmlage/django-cruds-adminlte к примеру... И шаблон привычно админский и бОльшая часть типовых операций автоматизирована.
Поищите на djangopackages.org что-нибудь. Кстати, большая часть раздела Admin Interface или просто шкурки, настраивающие внешний вид, или заброшены.