Именование в Cake действительно удобное – можно назвать таблицу базы данных как big_boxes, модель – BigBox, контроллер BigBoxesController, и все это будет работать автоматически. CakePHP находит общие слова, даже распознает их число – множественное или единственное.
Но в случае с не-англоговорящими программистами, когда используется этот класс, данная система может привести к проблемам. Если CakePHP не различает Foci от Fish, следует создать собственные правила именования в файле настройки класса: /app/config/inflections.php.
В этом файле находятся шесть переменных:
Переменные inflections.php | Описание |
$pluralRules | Массив содержит регулярные выражения для определения и изменения числа. Ключи массива – условия, значения – данные для замены |
$uninflectedPlural | Массив содержит слова, которые используются только во множественном числе. |
$irregularPlural | Тут находятся слова и их записи во множественном числе. Ключ массива – слово, значение – множественное число. Следует использовать для обработки слов-исключений, не подходящих под общие шаблоны массива $pluralRules. |
$singularRules | Как и массив $pluralRules, содержит только выражения для единственного числа. |
$uninflectedSingular | Так же, как и $uninflectedPlural, содержит слова, используемые только в единственном числе. |
$irregularSingular | Как и в массиве $irregularPlural, только исключения в единственном числе. |