ACL 截断操作名称

ACL truncates action name

使用PhalconPHP framework

我已经成功使用 ACL 一段时间了,但是 运行 当我尝试使用长度超过 16 个字符的操作名称时遇到了问题。当我在 users 资源下添加 adminChangePassword 作为访问权限时 |得到错误

Access 'adminChangePassw' does not exist in resource 'users'
#0 [internal function]: Phalcon\Acl\Adapter\Memory->_allowOrDeny('Administrators', 'users', 'adminChangePass...', 1)

但是使用名字 adminChangePassw 效果很好(除此之外它是一个垃圾名字)。该名称似乎在某个时候被截断了,我认为这是一个错误。

是这样吗,或者有人可以对此错误给出另一种解释吗?

快速测试

我刚刚尝试在名为 12345678901234567users 资源中添加访问权限,但错误提示 1234567890123456 不存在 - 截断了最后一个 7。 ..

出现在教程程序中

我尝试在我的工作 Vokuro 示例中将 'adminChangePassword' 添加到 ACL 并得到相同的错误 - 所以它与我对 ACL 的工作方式所做的任何更改无关。

这是因为我一直在使用 Vokuro 示例代码 - 该数据库将操作和资源字段的大小限制为 16 个字符。更改数据库设置以允许在这些字段中使用更多字符可解决此问题。