Участвую в разработке портала, клиентами которого являются целые компании, со своими собственными юзерами, админами, группами, пермиссиями. Все клиенты работают с одинаковыми моделями, но должны быть абсолютно изолированы друг от друга.
Какой подход посоветуешь, хабр? А может быть уже существует что-то готовое? Какие нибудь best practices? Особенно интересует гибкая модель пермиссий учитывающая изоляцию объектов одной компании от объектов другой компании.
Сейчас используем аналогичный подход. Очень неудобно то что в абсолютно любые запросы к бд приходится вставлять site__exact = current_site. Из-за этого class-based views доставляют только одни неудобства, т.к. в каждом надо перекрывать метод который получает датасет чтобы предварительно отфильтровать по текущему сайту.
Мы для себя выработали аналог никсовой модели разрешений.
У модели есть флаги «читать», «добавлять», «редактировать», «удалять». А также есть владелец и группа владельцев. Гибкость применения точно есть:)