CakePHP 3:HTMLHelper:缺少url

CakePHP 3:HTMLHelper:缺少url,php,cakephp,html-helper,cakephp-3.0,Php,Cakephp,Html Helper,Cakephp 3.0,我目前正在将一个应用程序升级到CakePHP 3。在CakePHP2中,我使用HTMLHelper::url生成指向按钮的控制器/操作等的链接 大概是这样的: <form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->url(array( "controller" => "users", "action" => "login")); ?&g

我目前正在将一个应用程序升级到CakePHP 3。在CakePHP2中,我使用HTMLHelper::url生成指向按钮的控制器/操作等的链接

大概是这样的:

<form class="navbar-form navbar-left form-signin" action="<?php echo $this->HTML->url(array(
    "controller" => "users",
    "action" => "login")); ?>" method="post">
您可以使用方法获取操作url。因此,只需按以下方式更改您的行:

<form class="navbar-form navbar-left form-signin" action="<?php echo Router::url(array("controller" => "users", "action" => "login")); ?>" method="post">
阅读迁移指南:

Helper::url()现在以Cake\View\Helper\UrlHelper::build()的形式提供


要创建链接,可以使用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">

这将缺少助手应用的附加实体编码。我是一个HTML和PHP的noob:-(我还没有找到一种使用FormHelper生成Boostrap兼容表单的方法。它总是非常混乱,因此我转而自己做。我希望所有这些都能做得更好,并以正确的方式…在未来。谢谢!我在指南中没有看到。附:Ich mag deinen博客:-)-1怎么能有人投票支持这个呢?这完全是胡说八道,
HtmlHelper::link()
创建了一个HTML
元素,而不仅仅是一个URL!另外,大小写不正确的属性在区分大小写的文件系统上会失败,因为它会查找
HtmlHelper.php
。使用$this->URL->build(数组('controller'=>'users','action'=>'login');