Цитата из https://docs.djangoproject.com/en/1.10/ref/contrib/admin/#customizing-the-adminsite-class
Если вы Вы хотите настроить свой собственный административный сайт с настраиваемым поведением, однако вы можете создавать подклассы AdminSite и переопределять или добавлять все, что вам нравится. Затем просто создайте экземпляр вашего подкласса AdminSite (так же, как вы создаете экземпляр любого другого класса Python), и зарегистрируйте в нем свои модели и подклассы ModelAdmin вместо использования по умолчанию .
Я полагаю, что это наиболее явный подход, но это также означает, что вам нужно изменить код регистра в файлах admin.py приложений.
На самом деле нет необходимости использовать автообнаружение при использовании собственного экземпляра AdminSite, так как вы, вероятно, будете импортировать все модули admin.py для приложения в свой модуль myproject.admin.
Предполагается, что, как только вы начинаете писать свой собственный сайт администратора, он становится в значительной степени специфичным для проекта, и вы заранее знаете, какие приложения вы хотите включить.
Так что если вы не хотите работать с хаком выше, я действительно вижу только эти два варианта. Замените все зарегистрированные вызовы на свой пользовательский сайт администратора или зарегистрируйте модели явно в модуле администратора.
Вот что делает haml, когда вы неправильно указали интервал. html2haml выполняет большую часть работы за вас, но вам все равно необходимо просмотреть изменения. Проблема с sessions / new.html.haml заключается в том, что вы запускаете блок do без содержимого:
- form_tag session_path do
%fieldset
Весь набор полей должен быть вложен (с отступом) в этот блок do
. Поскольку содержимого вообще нет, haml не может вставить объявление end
, поэтому при интерпретации файла вы получите:
unexpected $end, expecting kEND
, что означает: «Я достиг конца файла ($ end), я ожидал конечное ключевое слово (kEND) "
Как показано, в первом фрагменте% body отступ на один уровень больше, чем% head, а% head находится на том же уровне, что и% html, что не годится. Если это сработает, вы можете получить что-то вроде
<html>
</html>
<head>
...
<body>
...
</body>
</head>
. Я думаю, что большинство браузеров подавятся этим! ; -)
В целом я не фанат html2haml, который, хотя и очень старается, не может справиться со всем. Если у вас не очень большая куча файлов просмотра, я был бы склонен потратить время на переработку файлов вручную. Необязательно делать их все сразу, почему бы просто не перевести их по ходу дела? Таким образом вы также узнаете намного больше о HAML. Хватит - надеюсь, - вы обнаружите, что вся эта вещь с отступом становится инстинктивной, после чего прогресс начинает ускоряться.