нет, скажем int. константы. пока этого хватит. Но если для моделей есть идеа, то вообще круто.
Например, Создаю роль, Бухгалтеры (id=1). Есть аккаунты, скажем Иван Петров (id=2). Назначаю ему роль Бухгалтеры, таким образом появится запись в таблице model_has_roles: role_id = 1 model_id = 2 model_type = Accounts Добавляем привилегию, view, допустим с id = 3 в таблицу permissions. Теперь нужно связывать ProductType модель с привилегию view (id=3) и с типом продукта - 4. это в таблицу model_has_permissions: permission_id = 3 model_type = ProductType model_id = 4 Окей, теперь как мне связывать, что Иван Петрову нужно показать только продукт с типом id = 4, если тут не связывать модел ProductType с ролью id = 1 с добавлением еще одну запись к таблицу model_has_roles с model_type = ProductType ? Тогда, код проверки доступа будет примерно так: ` … $account = $this->getCurrentAccount(); $productType = $product->type; if ($productType->hasRole($account->roles) && $productType->hasPermissionTo(‘view’)) { // can view product type } `
тут что плохо, что типа у продукта тоже будет роль))))
и это продолжение с примером.
Обсуждают сегодня