Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Возможно не оптимальная работа метода User::can #13059

Closed
wartur opened this issue Nov 22, 2016 · 2 comments
Closed

Comments

@wartur
Copy link

wartur commented Nov 22, 2016

What steps will reproduce the problem?

Имею социальную сеть, допустим храбрахабр. В зависимости от того есть ли право пользователя редактирования поста требуется показать элемент интерфейса на определенном посте с кнопкой редактирование. Использую yii\rbac\DbManager

Право пользователя проверяется по авторизации и по правилу пользователя.

// использую этот метод
Yii::$app->user->can(Rights::USER_POST_UPDATE, ['model' => $model])

What is the expected result?

Если человек гость: Генерируется 4 запроса к БД
Если авторизован: Генерируется 4 запроса к БД

What do you get instead?

Если человек гость: Не создается запросов
Если авторизован: Генерируется 4 запроса к БД

Additional info

То есть. Мне кажется, что не должно генерироваться запросы в случае, если человек не авторизован. Возможно я не прав и чего-то не понимаю.

Сейчас я пользуюсь этой конструкцией

!Yii::$app->user->isGuest && Yii::$app->user->can(Rights::USER_POST_UPDATE, ['model' => $model])
Q A
Yii version 2.0.10?
PHP version 7.0.8
Operating system Windows NT K-USER 6.1 build 7601 (Windows 7 Professional Edition Service Pack 1) AMD64
@SilverFire
Copy link
Member

Будет исправлено пул-реквестом #12785

@SilverFire SilverFire added this to the 2.0.11 milestone Nov 22, 2016
@SilverFire
Copy link
Member

Дубликат #12771

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants