Javharbek
Таким образом мы перебиваем js файл из папки vendor?
Это был один самых простых методов. Хотите прочитайти вот это. https://yiiframework.com.ua/ru/doc/guide/2/structure-assets/#combining-compressing-assets
Evgenii
спасибо
Shokha
при исползваня if (\Yii::$app->user->can('admin'))
Максим
Ваня)
Shokha
ошибка Rule not found: admin
Максим
ошибка Rule not found: admin
а роль такая существует? как реализован RBAC?
Shokha
вот база
Максим
я имею ввиду код, который проверки и сопоставления все делает
Shokha
при исползваня if (\Yii::$app->user->can('admin'))
если пишу туда любой вещ кроме admin не дает не какой ошибку
Максим
недостаточно только миграцию сделать, надо еще компонентам указать, где и как проверять доступ к действиям
Максим
в каком файле надо это делат скажи пж
https://yiiframework.com.ua/ru/doc/guide/2/security-authorization/
Javharbek
Всем привет, есть ли расширение для интеграции 1C и Yii2 (для интернет магазина)
Vano
Ваня)
ты меня звал? :)
Максим
в каком файле надо это делат скажи пж
как ты роль закрепляешь за пользователем?
Максим
Vano
а, оки
Максим
в базе просто указваю
https://elisdn.ru/blog/87/seo-service-on-yii2-adding-rbac тут очень подробно описано, примеры классов есть для управления ролями
Shokha
как ты роль закрепляешь за пользователем?
Yii::$app->authManager->getRole('admin') если в пхп коде так делал
Shokha
у меня толко один будет Админ
Максим
тут говорит рол каждому ползователю
можно при регистрации дефолтную роль задавать юзеру
Shokha
у меня толко один будет Админ
ему просто из базу можно же дават
Максим
вообще если только одна роль будет, достаточно поле в таблице users добавить в ролью, а не колхозить полноценный rbac
Shokha
<?php if (\Yii::$app->user->can('admin')){ ?> <li> <a href="#"> <i class="fa fa-book"></i> <span>Documentation</span> </a> </li> <?php } ?>
Shokha
вот хочу позказат это ссылку толко для админа но дает ощибка
Shokha
'components' => [ 'authManager' => [ 'class' => 'yii\rbac\DbManager', ],
Shokha
тоже добавил в web.php
Максим
добавляешь поле role в таблицу users, по дефолту user, ставишь кому надо admin, и потом вот так проверяешь if (\Yii::$app->user->identity->role == 'admin') { но вообще лучше один раз разобраться с rbac, почитай оф доку, там все доступно, рабочий вариант
Максим
вообще в базу руками не надо лазить, плохо закончится рано или поздно. только миграции при создании таблиц или изменении структур, а менять или добавлять данные через модели
Shokha
я тоже толко через минрации
Максим
я тоже толко через минрации
а для меню есть виджет Menu, там можно задавать, какие пункты будут видеть какие роли
Максим
я тоже толко через минрации
вот тут https://yiiframework.com.ua/ru/doc/guide/2/security-authorization/#ispolzovanie-pravil абзац "использование правил" тебе надо посмотреть и сделать
Shokha
[ 'allow' => true, 'actions' => ['index','view', 'create', 'update', 'delete'], 'roles' => ['admin'], ], у меня так было я удалил все таблици которие преднадлежит rbac
Максим
return [ 'access' => [ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => ['index', 'view'], 'allow' => true, 'roles' => ['admin'], ], ], ], ];
Максим
так и писать. тут ошибка в другом - ты видимо руками все это делаешь, проверки всякие, а rbac прекрасно и сам может все разруливать
Максим
я ж не знаю, что ты там написал и как
Максим
может миграцию rbac неправильно сделал, или вообще таблицы руками создал
Максим
первое правило можно не писать, там где allow false
Максим
все что явно не разрешено, будет запрещено
Gnevniy
Добрый день. Подскажите пожалуйста, в gredview свойство visible принимает в качестве занчения колбэк функцию?
Shokha
я их удолил)))
Максим
если так делат надо там таблици RBAC'а?
миграция их делает) в доках найди
Максим
а, не, не обязательно
Максим
если у тебя не будет много ролей и правил, а только админ и юзер, то можно и без rbac обойтись, полем role в таблице user
Shokha
ясно! а почему тогда такя ошибка
Максим
ясно! а почему тогда такя ошибка
понятия не имею, видимо где то что то криво сделал
Максим
а стоп. rowOptions может принимать коллбек, а visible хз
Максим
но скорей всего да, если это просто поле, которое принимает значение
Gnevniy
@kohone Подскажите что я не так делаю, по тому что у меня почему то не работает. http://joxi.ru/KAga3nqFg14OGm
Максим
Object of class Closure could not be converted to string in такую?
Gnevniy
ошибку выдает?
Просто не работает. Если пишу без функции фолс или тру то работает. А с функцией нет.
Максим
не понимает он анонимные функции
Максим
а вот value выше явно видно, что понимает
Максим
либо переопределять gridView и DataColumn, и там менять, чтобы понимало, либо выносить в отдельный метод проверку
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
не понимает он анонимные функции
зачем анонимная ф-я на колонку?
Denis
А коллбэк можно понимать как тип?
Максим
зачем анонимная ф-я на колонку?
надо человеку сложную проверку, в ней все проворачивает
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
это же не на строку и не на ячейку а на колонку
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
надо человеку сложную проверку, в ней все проворачивает
какую сложную проверку? это делается один раз и все
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
колбэк нужен если от контента зависит и т.д.
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
а здесь либо визибл либо нет на все содержимое. Как и headerOptions
Максим
видимо, тут от контекста, Если в одной из строк выполняется условие, то колонку прятать, независимо от условий в других ячейках этой колонки
Gnevniy
а вот value выше явно видно, что понимает
Что value понимает я знаю, Просто он никак не влияет на отображение строки.
Максим
А коллбэк можно понимать как тип?
это скорее не тип, а экземпляр класса Closure, который используется в анонимных функциях
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
Максим
типа false если все null? а как приоритет задать? false важнее true или наоборот?
это не ко мне) я условий не знаю. автор вопроса не я
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
вернуло 19 строк false и одна true и что дальше с этим делать?