Отключение просмотра страницы контроллера

Я абсолютный новичок в мире Yii и MVC. Мой вопрос: скажем, если я сделал CRUD для некоторой модели, и я изменил партиал "_form.php", чтобы использовать его из другого места, например, форму комментария, которая используется из представления "пост", и для пример, если моя ссылка для создания комментария:

http://localhost/example/comment/create

Как я могу запретить доступ к этой странице и вызывать ее только из представления "посты"?

Должен ли я использовать RBAC для этого? Есть ли другой метод? Использование методов "GET" может быть?

1 ответ

Вы можете попробовать проверить, является ли страница реферала той, которую вы хотите, используя getUrlReferrer() или магическое свойство urlReferrer:

http://www.yiiframework.com/doc/api/1.1/CHttpRequest

например:

if(preg_match('/post\/view/', Yii::app()->request->urlReferrer) === 1) {
    // do something
}

Поместите это в свой comment/create действие.

Другие вопросы по тегам