Существует множество плагинов для rails, которые обрабатывают права пользователей. Я впечатлен реализацией в hobo gem, но я не уверен, смогу ли я использовать только эту функцию, а не другие части. GateKeeper - действительно умная реализация, но в ней есть некоторые ошибки, хотя она и достаточно мала, и я, возможно, смогу исправить это сам. Restful_ACL предоставляет вам метод класса для проверки создания, что означает, что вы не можете выполнять какие-либо проверки для рассматриваемого экземпляра (не уверен, что он выполняет поиск по областям).
Я хотел бы получить что-то, что предоставляет ограниченную версию ActiveRecord # find, которая находит только то, что может видеть текущий пользователь. Это должно быть достаточно убедительным, чтобы сказать, что вы можете видеть только изображения, которые находятся в галереях, принадлежащих вам или одному из ваших друзей.
В качестве бонуса это может предотвратить создание или обновление (на этапе before_ * или проверки), которое вы не имеете права выполнять, в том числе связывание собственных записей с другим пользователем или галереей или создание таких записей.