CakePHP-调用camel case操作方法,但URL中带有下划线
我怎样才能像CakePHP-调用camel case操作方法,但URL中带有下划线,php,cakephp,Php,Cakephp,我怎样才能像myActionMethod()那样保留我的操作方法名称,而在URL中使用/controller/my\u action\u method 我确信蛋糕会自动地做这个变化,但显然不是。我必须给我的方法命名,比如my\u action\u method,这是我不喜欢的 更好的解决方案是为SEO提供连字符URL,而不是下划线。您需要将此字符串添加到app/core/routes.php文件中 Router::connect ('/controller/action-action/*',ar
myActionMethod()
那样保留我的操作方法名称,而在URL中使用/controller/my\u action\u method
我确信蛋糕会自动地做这个变化,但显然不是。我必须给我的方法命名,比如my\u action\u method
,这是我不喜欢的
更好的解决方案是为SEO提供连字符URL,而不是下划线。您需要将此字符串添加到app/core/routes.php文件中
Router::connect ('/controller/action-action/*',array('controller'=>'somecontroller', 'action'=>'actionaction'));
例如:
Router::connect ('/users/view-user/*',array('controller'=>'users', 'action'=>'viewUser'));
/用户/查看用户/
/用户/视图用户/
两个url具有相同的操作您需要将此字符串添加到文件app/core/routes.php中
Router::connect ('/controller/action-action/*',array('controller'=>'somecontroller', 'action'=>'actionaction'));
例如:
Router::connect ('/users/view-user/*',array('controller'=>'users', 'action'=>'viewUser'));
/用户/查看用户/
/用户/视图用户/
两个url具有相同的操作您可以使用路由;但为什么要在这么琐碎的事情上打破惯例呢?是否有一种能自动全局转换所有URL的路由?我不认为方法命名约定是微不足道的。我喜欢坚持编码约定,因此总是使用驼峰大小写方法名。有些加下划线和驼峰格似乎很愚蠢。你可以使用路由;但为什么要在这么琐碎的事情上打破惯例呢?是否有一种能自动全局转换所有URL的路由?我不认为方法命名约定是微不足道的。我喜欢坚持编码约定,因此总是使用驼峰大小写方法名。在应用程序中添加下划线和驼峰形似乎很愚蠢。这似乎意味着您必须为要连接的每个操作都这样做。可能会有数百个。我添加了一个小示例,希望它能有所帮助,很抱歉,因为为我解释一些关于英语的内容,这并不容易。看起来,对于应用程序中要连接的每个操作,您都必须这样做。可能会有数百个。我添加了一个小例子,希望能有所帮助,抱歉,因为为我解释一些关于英语的内容,这并不容易