Cakephp 字体符号未显示为表单帮助程序按钮标题

Cakephp 字体符号未显示为表单帮助程序按钮标题,cakephp,cakephp-4.x,Cakephp,Cakephp 4.x,CakePHP版本:4.0.1 字体真棒版本:free-5.12.0- 我刚刚从Cake版本3.7.5升级到4.0.1,字体awesome标志符号不再显示为按钮标题 我按照食谱中的信息来配置按钮,详情如下: $this->Form->button('<i class="fas fa-search"></i>', [ 'type' => 'submit', 'name' => 'AccountChoose', 'class'

CakePHP版本:4.0.1
字体真棒版本:free-5.12.0-

我刚刚从Cake版本3.7.5升级到4.0.1,字体awesome标志符号不再显示为按钮标题

我按照食谱中的信息来配置按钮,详情如下:

$this->Form->button('<i class="fas fa-search"></i>', [
    'type' => 'submit',
    'name' => 'AccountChoose',
    'class' => 'btn btn-ae-lookup-as-glyph'
]);
$this->Form->button(“”[
'类型'=>'提交',
'name'=>'AccountChoose',
“类”=>“btn btn ae查找为图示符”
]);
我尝试在按钮配置中使用'escape'=>true,以防万一这与html编码有关,但没有改变

$this->Form->button("<i class='fas fa-search'></i>", [
我也试着像这样宣布标题,但仍然没有改变

$this->Form->button("<i class='fas fa-search'></i>", [
$this->Form->button(“[
图示符显示在按钮外部,因此我知道它在3x和4x分支之间发生了变化

我的问题。

是否有一种按钮配置允许我在版本4.0.1或更高版本中将图示符显示为按钮标题 它已经被设计出来了,在这种情况下,有一种替代方法

谢谢你


@ndm-很好,一切正常。感谢您创建Pr。

从CakePHP 4.x开始,文档似乎过时了。默认情况下,按钮内容是HTML整体编码的。从迁移指南:

Cake\View\Helper\FormHelper::button()
现在默认情况下,HTML实体对按钮文本和HTML属性进行编码。添加了一个新选项
escapeTile
,以允许分别控制转义标题和其他HTML属性

因此,您需要显式禁用转义(这需要使用
false
,而不是
true
)。4.x还引入了
escapeTile
选项,您应该使用该选项,而不是
escape
,因为后者现在只适用于HTML属性:

$this->Form->button(“”[
'类型'=>'提交',
'name'=>'AccountChoose',
“类”=>“btn btn ae查找为图示符”,
“EscapeTile”=>错误,
]);
另见

我已推动更新表单帮助程序文档。