У меня есть приложение для мультитенантных рельсов.
Модели, которые я хочу использовать для текущего арендатора (например, модель этой статьи здесь) наследуют модель арендатора, как эта
class Article < TenantScoped
end
это прекрасно работает. я получаю только объекты, выделенные для текущего арендатора.
но сейчас я создаю интерфейс администратора, где я хочу иметь возможность добавлять статьи всем арендаторам. но мой интерфейс администратора выступает в роли арендатора, и модели подпадают под него.
Который заканчивается без записей.
Я полагаю, что наилучшее решение для этого - условно наследовать от модели области действия арендатора, как это
class Article
unless SudoTenant.current?
< TenantScoped
else
< ActiveRecord::Base
end
end
Я искал условное наследование классов ruby и еще ничего не нашел. мой синтаксис здесь неправильный или это вообще возможно?
Заранее спасибо