使用CakePHP 3.7。
我在config/bootstrap.php的底部添加了
Inflector::rules('irregular', ['thesis' => 'theses']);
实际上,我试过
Inflector::rules('irregular', ['theses' => 'thesis']);
以防我把它弄反了。
在我正在尝试使用的细胞中:
use Cake\Utility\Inflector;
$singular_and_plural = [Inflector::singularize($base_name), $base_name];对“论文”一词进行单值化的结果是"thesiss“。
有人能指出哪里出了问题吗?
发布于 2019-05-01 03:00:58
第一种形式是正确的形式,关键字是奇异值,值是复数值。
也就是说,您在这里显示的是Inflector::singularize()的不正确/有问题的用法,因为您正在向它传递一个已经是单数的值,这样做通常会得到意想不到/错误的结果。在这种情况下,您可以打开一个问题票据,有时这可以在核心中修复,但通常情况下,这是不可能的,因为它将与现有的所需规则冲突。
还应该注意的是,CakePHP已经可以开箱即用地处理thesis/theses,它有与之匹配的单数/复数规则。确保您传入的是预期值,并且您没有额外的自定义规则,这可能会干扰您试图改变的内容。
https://stackoverflow.com/questions/55926726
复制相似问题