CakePHP 3:缺少 HTMLHelper:url
CakePHP 3: HTMLHelper:url missing
我目前正在将应用程序升级到 CakePHP 3。在 CakePHP 2 中,我使用 HTMLHelper::url 为按钮等生成指向 controllers/actions 的链接。
像这样:
<form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->url(array(
"controller" => "users",
"action" => "login")); ?>" method="post">
如您所见,我正在使用 $this->HTML->url()
生成指向我的 controller/actions 的链接。在 CakePHP 3 中缺少 HTMLHelper::url()。文档和迁移指南都没有提到它。在 Cake 3 中还有其他生成链接的方法吗?
谢谢!
亚历克斯
您可以使用 Router::url()
方法获取操作 url。所以只需按如下方式更改您的行:
<form class="navbar-form navbar-left form-signin" action="<?php echo Router::url(array("controller" => "users", "action" => "login")); ?>" method="post">
顺便问一下,你为什么不使用 FormHelper 来生成你的表单?
阅读迁移指南:
http://book.cakephp.org/3.0/en/appendices/3-0-migration-guide.html#view-helper
Helper::url() is now available as Cake\View\Helper\UrlHelper::build().
要创建 link,您可以使用 cakephp
的 link 方法
Cake\View\Helper\HtmlHelper::link(string $title, mixed $url = null, array $options =[])
为您上面提到的代码试试这个
<form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->link(array(
"controller" => "users",
"action" => "login")); ?>" method="post">
我目前正在将应用程序升级到 CakePHP 3。在 CakePHP 2 中,我使用 HTMLHelper::url 为按钮等生成指向 controllers/actions 的链接。
像这样:
<form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->url(array(
"controller" => "users",
"action" => "login")); ?>" method="post">
如您所见,我正在使用 $this->HTML->url()
生成指向我的 controller/actions 的链接。在 CakePHP 3 中缺少 HTMLHelper::url()。文档和迁移指南都没有提到它。在 Cake 3 中还有其他生成链接的方法吗?
谢谢! 亚历克斯
您可以使用 Router::url()
方法获取操作 url。所以只需按如下方式更改您的行:
<form class="navbar-form navbar-left form-signin" action="<?php echo Router::url(array("controller" => "users", "action" => "login")); ?>" method="post">
顺便问一下,你为什么不使用 FormHelper 来生成你的表单?
阅读迁移指南: http://book.cakephp.org/3.0/en/appendices/3-0-migration-guide.html#view-helper
Helper::url() is now available as Cake\View\Helper\UrlHelper::build().
要创建 link,您可以使用 cakephp
的 link 方法Cake\View\Helper\HtmlHelper::link(string $title, mixed $url = null, array $options =[])
为您上面提到的代码试试这个
<form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->link(array(
"controller" => "users",
"action" => "login")); ?>" method="post">