Сначала я бы предложил определить некоторые привилегии, такие как
.
privileges do
privilege :crud do
includes :show, :index, :create, :edit, :update, :delete
end
privilege :read_only do
includes :show, :index
end
end
Основываясь на том, что вы сказали, например, я бы проверил больше API Authorization :: Reader, например, чтобы позволить администратору уничтожать только что отправленные им сообщения (если только он не может уничтожить сообщения от других пользователей, но вы не ничего не скажешь)