alexdpy / simple-acl-bundle
简单ACL包
0.1.0
2015-10-25 21:41 UTC
Requires
- php: >=5.3
- alexdpy/acl: ~0.3
- symfony/framework-bundle: ~2.3
Requires (Dev)
This package is not auto-updated.
Last update: 2024-09-14 17:48:18 UTC
README
动态访问控制列表的最简单方式
此包是该ACL库的包装器。您想要一些动态的ACL吗?您认为symfony/acl组件过于复杂且难以使用吗?您需要一个“易于使用”的包吗?这个包就是您的答案!
安装
$ composer require alexdpy/simple-acl-bundle
启用包
app/AppKernel.php:
<?php // ... class AppKernel extends Kernel { public function registerBundles() { $bundles = array( // ... new AlexDpy\AclBundle\AlexDpyAclBundle(), ); // ... } // ... }
更新您的数据库模式
@see https://github.com/AlexDpy/Acl#update-your-database-schema
配置
创建一个DatabaseProvider服务
选择一个现有的DatabaseProvider或者创建您自己的,并将其作为服务。
app/config/services.yml:
services: app.acl.database_provider: class: AlexDpy\Acl\Database\Provider\DoctrineDbalProvider arguments: - @doctrine.dbal.default_connection
添加一些配置
app/config/config.yml:
alex_dpy_simple_acl: database_provider: app.acl.database_provider
开始吧!
一切正常。
<?php $acl = $this->container->get('alex_dpy_simple_acl.acl');
@see https://github.com/AlexDpy/Acl#usage 了解使用方法。
使用CacheProvider
ACL库使用DoctrineCache。创建CacheProvider服务的最简单方法是使用DoctrineCacheBundle。
$ composer require doctrine/doctrine-cache-bundle
app/config/config.yml:
doctrine_cache: providers: acl_cache: type: apc namespace: simple_acl alex_dpy_simple_acl: database_provider: app.acl.database_provider cache_provider: doctrine_cache.providers.acl_cache
@see https://github.com/AlexDpy/Acl#cache
模式选项
app/config/config.yml:
alex_dpy_simple_acl: database_provider: app.acl.database_provider schema: permissions_table_name: acl_perm requester_column_length: 100 resource_column_length: 100
自定义MaskBuilder
app/config/config.yml:
alex_dpy_simple_acl: database_provider: app.acl.database_provider mask_builder_class: My\Custom\MaskBuilder
@see https://github.com/AlexDpy/Acl#the-maskbuilder
使用方法
@see https://github.com/AlexDpy/Acl#usage