【发布时间】:2011-04-17 14:28:58
【问题描述】:
Kohana(可能还有其他框架)允许您获取路由并回显其 URL,从而创建易于维护的路由。
<a href="<?php echo url::base() . Route::get('contact'); ?>">Contact</a>
在视图中是否可以,或者我应该将它分配给一个变量,然后将变量传递给视图?
谢谢
【问题讨论】:
标签: php model-view-controller kohana-3
Kohana(可能还有其他框架)允许您获取路由并回显其 URL,从而创建易于维护的路由。
<a href="<?php echo url::base() . Route::get('contact'); ?>">Contact</a>
在视图中是否可以,或者我应该将它分配给一个变量,然后将变量传递给视图?
谢谢
【问题讨论】:
标签: php model-view-controller kohana-3
您没有在此处执行逻辑。这是完全可以接受的。
当然,如果您在控制器中创建变量,您的视图代码会更简洁一些,但恕我直言,这确实很好。
【讨论】:
我觉得这样的连接是不必要的。似乎 url::base() 将在网站上的每个链接中使用。为什么没有一种自动添加它的方法?类似Route::url("contact")
在模板中使用这样的构造是可以的。
【讨论】:
你可以创建一个函数或静态方法来生成url:
public static function url($routename, array $params = NULL)
{
return url::base().Route::get($routename)->uri($params);
}
【讨论】:
url::url()不会混淆吗?
common::url() 或core::url() :) 通常我不会为新功能修改/扩展系统类。