Задать вопрос

Как убрать постоянное дублирование кода, на проверку прав доступа?

Всем привет!

У меня есть два вида проверок:
1) Залогинен ли пользователь для взаимодействия со страницой;
2) Принадлежит ли пользователю объект, над которым он хочет провести операцию удаления, редактирования и т.д;

Первое я решил очень просто. У меня проект построен на CodeIgniter, перед выполнением метода контроллера, у меня выполняется хук – где в нём идёт нужная проверка. Сделал я это через аннотации, у метода контроллера ставится док-комментарий:
/**
 * Удаление объекта
 *
 * @auth_required
 */
public function remove_object($object_id)

Со вторым сложнее, приходится писать вот такой код:
if ($object->getOwner()->getId() != $this->session->userdata('user_id'))
    show_404();

Возможно есть решения как это обойти?
  • Вопрос задан
  • 2953 просмотра
Подписаться 4 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    1C-разработчик
    8 месяцев
    Далее
  • Нетология
    Python-разработчик с нуля
    6 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы