Я новичок в ZF2 и bjyauthorize - это таким образом, в надежде, что это глупая ошибка с моей стороны: DПолучить белый экран при добавлении охранников bjyauthorize
У меня настроить ZF2 скелет приложения и zfcUser успешно и Я пытаюсь добавить bjyAuthorize в микс. Я также использую тип подключения Zend/Db к mySQL - NOT DOCTRINE (: D). Используемыми мной версиями являются PHP (5.5), ZF2 (2.3. *), ZfcUser (1.2.1), bjyAuthorize (1.4.0).
Я выполнил инструкции, указанные в письме в GitHub Readme. Это не займет много времени, чтобы понять, что на примере «bjyauthorize.global.php» файл там содержит слишком много параметров (в качестве примера), а также имеет неправильную ссылку поля под "\ BjyAuthorize \ Provider \ Роль \ ZendDb :: класс "(" role_id "s/b" roleid ").
В принципе, как только я раскомментирую на основе правил на основе маршрутов или контроллеров на основе правил в моем файле конфигурации (я не намерен делать то и другое - просто хочу работать) Я получаю белый экран - никакое сообщение об ошибке не будет полезно - при попытке доступа к домашней странице моих скелетных приложений. Я волнуюсь, поэтому это синтаксическая ошибка PHP с моей стороны.
Я также включил ZendDeveloperTools и даже панель инструментов на нижнем колонтитуле появляется, когда я получаю эту ошибку.
Вот мой конфигурационный файл:
<?php
return [
'bjyauthorize' => [
// set the 'guest' role as default (must be defined in a role provider)
'default_role' => 'guest',
/* this module uses a meta-role that inherits from any roles that should
* be applied to the active user. the identity provider tells us which
* roles the "identity role" should inherit from.
*
* for ZfcUser, this will be your default identity provider
*/
'identity_provider' => \BjyAuthorize\Provider\Identity\ZfcUserZendDb::class,
/* role providers simply provide a list of roles that should be inserted
* into the Zend\Acl instance. the module comes with two providers, one
* to specify roles in a config file and one to load roles using a
* Zend\Db adapter.
*/
'role_providers' => [
// this will load roles from the user_role table in a database
// format: user_role(role_id(varchar], parent(varchar))
\BjyAuthorize\Provider\Role\ZendDb::class => [
'table' => 'user_role',
'identifier_field_name' => 'id',
'role_id_field' => 'roleid',
'parent_role_field' => 'parent_id',
],
],
/* Currently, only controller and route guards exist
*
* Consider enabling either the controller or the route guard depending on your needs.
*/
'guards' => [
/* If this guard is specified here (i.e. it is enabled], it will block
* access to all controllers and actions unless they are specified here.
* You may omit the 'action' index to allow access to the entire controller
*/
// \BjyAuthorize\Guard\Controller::class => [
// ['controller' => 'zfcuser', 'roles' => ['guest']],
// ['controller' => ['Application\Controller\Index'], 'roles' => ['guest']],
// ],
// /* If this guard is specified here (i.e. it is enabled], it will block
// * access to all routes unless they are specified here.
// */
// \BjyAuthorize\Guard\Route::class => [
// ['route' => 'zfcuser', 'roles' => ['user']],
// ['route' => 'zfcuser/logout', 'roles' => ['user']],
// ['route' => 'zfcuser/login', 'roles' => ['guest']],
// ['route' => 'zfcuser/register', 'roles' => ['guest']],
// // Below is the default index action used by the ZendSkeletonApplication
// ['route' => 'home', 'roles' => ['guest', 'user']],
// ],
],
],
];
Когда я бегу, как кодируются выше без охраны, я могу войти через сайт/пользователя/логин и Zend Dev ToolBar показывает мне правильную роль для этого пользователя. Это хотя бы положительно.
С удовольствием предоставляем любую дополнительную информацию или настройки - просто пытаемся учиться.
После "играть" с настройками, я обнаружил, что, если я заменю код: \ BjyAuthorize \ Provider \ Роль \ ZendDb :: класс => [ 'стол' => 'USER_ROLE', ' identifier_field_name»=> 'ID', 'role_id_field' => 'идентификатор роли', 'parent_role_field' => 'parent_id', ], с: \ BjyAuthorize \ Provider \ Роль \ Config :: класс => [ 'guest' => [], 'user' => ['children' => [ 'admin' => [], ]], ], Он отлично работает, поэтому возникает вопрос, почему он не может получить роли из БД .... –