关于开发时间,这不是很慢吗?
HTML-> link有什么好处?
谢谢!
答案 0 :(得分:4)
这只是一个问题,您是想要生成自己的URL并对其进行硬编码,还是希望Cake为您完成工作。对于使用cake导致网站主页的简单网址可能看起来较慢,但它实际上对动态网址很有用,例如:
假设您正在打印一个项目表,并且每个删除该项目的项目都有一个链接。您可以使用以下方法轻松创建:
<?php
echo $this->Html->link(
'Delete',
array('controller' => 'recipes', 'action' => 'delete', $id),
array(),
"Are you sure you wish to delete this recipe?"
);
请注意,如果使用指定控制器和操作的数组作为URL,则可以使您无法识别任何自定义路由。这可能有其优点。
没有HTML帮助程序的相应方法是:
<a href="/recipes/delete/<?php echo $id; ?>" onclick="return confirm('Are you sure you wish to delete this recipe?');">Delete</a>
它对于自动构建URL查询字符串也非常有用。例如,您可以以数组格式执行此操作:
<?php
echo $this->Html->link('View image', array(
'controller' => 'images',
'action' => 'view',
1,
'?' => array('height' => 400, 'width' => 500))
);
然后输出这行HTML:
<a href="/images/view/1?height=400&width=500">View image</a>
手动生成该URL可能会很痛苦。
总之,虽然简单链接看起来很尴尬,但HTML助手肯定有其用途。如需进一步使用,请参阅cakePHP book on the HTML helper's link function。