Автор Тема: Создание объекта Acl по данным из MySQL  (Прочитано 15480 раз)

0 Пользователей и 1 Гость смотрят эту тему.

Оффлайн frol

  • Опытный
  • ***
  • Сообщений: 90
  • Карма: 5
Re: Создание объекта Acl по данным из MySQL
« Ответ #105 : Июля 23, 2010, 17:22:07 »
вообще продумываю сейчас универсальную систему проверки ACL, где ресурсом является доменная модель (статья, категория). Столкнулся с проблемой лимитированной выборки, например, пагинацией. Допустим нам надо выбрать статьи с LIMIT 10, 20. Выбрали->отфильтровали acl. В результате сами понимаете, 10 статей на страницу может и не дойти =). У кого-то и вовсе может быть пусто. Что же получается, надо будет добирать? =))) Надо думать над интеграцией с БД.
в идеале, нужно делать запрос, который учтет acl, с помощью join и т.д.

Есть вариант забирать все id-шники из таблицы, пропускать их через Zend_Acl, а потом добавлять их в WHERE `id` IN (......) (или в  NOT IN). Причем эти id можно закэшировать (хотя кэшировать придется для каждого пользователя). Интересно, насколько будет дорого применять такую проверку, скажем на 2000 записей? Думаю, будет жесть.
« Последнее редактирование: Июля 23, 2010, 17:25:30 от frol »