我也不喜欢链接方法,我发现在我的链接中添加类、id 和 target="_blank" 等属性有点过头了。
我这样做是为了链接:
<a class="myclass" href="<?php echo $this->Html->url(array('controller'=>'my_controller','action'=>'my_action','plugin'=>false)); ?>">My Anchor Text</a>
所以,我仍然使用 HTML 助手来获取 URL,但是我自己编码的 html 元素。我建议这样做,而不是对 URL 进行硬编码。这是 Cake 的做法,它允许您充分利用 Cake 在 routes.php 中的内置路由功能,并创建漂亮的路由,而无需在多个地方硬编码或记住它们。
它还使其他人将来更容易查看您的代码 - 例如。硬编码的“quals/show”链接是否引用了您的 webroot 中的 quals/show 目录?还是指 quals 控制器的 show 动作?(当您开始使用插件时,它只会变得更加复杂)。如果您使用 html 帮助程序来创建 URL,那么所有这些内容都会立即清晰。
如果你想让它看起来整洁,你可以把它分成两行,如下所示:
<?php $url = $this->Html->url(array('controller'=>'my_controller','action'=>'my_action','plugin'=>false)); ?>
<a class="myclass" href="<?php echo $url; ?>" >My Anchor Text</a>
如果您有一个大型项目,则更有理由使用 Cake 的 URL 助手。现在这似乎是一个好主意,但硬编码它们会在未来的某个时候让你头疼。