Нет, вы можете использовать - (дефис) в имени контроллера, так как это даст вам синтаксическую ошибку.Но если вы хотите использовать дефис в URL, тогда вы можете сделать что-то вроде этого:
Создать контроллер с _ то есть best_practices
И использовать для этого маршрутизацию, чтобы открыть ваше / app/Config/routes.php add
Router :: connect ('/ best-Practices / *', массив ('controller' => 'best_practices', 'action' => 'index'));