为什么我会将此作为回复?
########## DEBUG ##########
'/companies/-edit/5'
###########################
从这段代码?
debug(Router::url(['controller' => 'Companies', 'action' => '_edit', $entity->id]));
注意调试器的“下划线”和作为响应的行吗?
答案 0 :(得分:1)
在CakePHP 3中,您应该为控制器操作使用camelBacked命名约定。应为受保护的方法预留带有下划线_
的控制器方法。
CakePHP路由器将camelBacked方法转换为用户友好的虚线字符串。例如,操作myBookings
将成为网址中的my-bookings
。 CakePHP还会将_
转换为-
,这样可以向后兼容旧的CakePHP 2动作,这些动作都是蛇案例。