Как реализовать логику с модели Django?
Модель по сути не должна в себе содержать никакой логики
Почему? Если работает с одним экземпляром модели, то именно в ней и надо делать метод.
А менеджеры нужны для другого. Там больше работа с QuerySet'ами.
>Подскажите, как или куда вы выносите логику модели, которая делает некие изминения над атрибутами модели при выводе? 
1. Расчёт rate в примере — это не совсем логика. Просто атрибут модели, который можно рассчитать, вместо того, чтобы хранить. Такие атрибуты вполне можно оставлять в модели.
2. Именно логику (операции над моделями) лучше отделять от них — можно просто в отдельный модуль вынести. Либо в менеджер, если они низкоуровневые.
3. Если объект, представляемый в модели, сложен (предполагает большое количество данных в разных форматах с кучей связанных объектов, необходимостью кэширования и так далее), то имеет смысл оставить модель представлять уровень БД (для общения с базой, миграций и так далее), а для представления объекта в логике реализовать отдельный класс, объекты которого будут инициализироваться данными из модели.