对于 CakePHP 3.0 版本...
...没有办法只将属性传递给模板。您必须重新定义适当的表单助手模板。
您可以使用例如全局更改它们FormHelper::templates()
:
$myTemplates = [
'inputContainer' => '<div class="col-md-4 input {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="col-md-4 input {{type}}{{required}} error">{{content}}{{error}}</div>'
];
$this->Form->templates($myTemplates);
templates
或仅通过选项用于特定输入:
echo $this->Form->input('mobile', [
'templates' => [
'inputContainer' => '<div class="col-md-4 input {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="col-md-4 input {{type}}{{required}} error">{{content}}{{error}}</div>'
],
'class' => 'form-control',
'label' => false
]);
也可以看看
从 CakePHP 3.1 开始...
...您可以使用所谓的模板变量。您可以将它们放置在模板中的任何位置
$myTemplates = [
'inputContainer' => '<div class="input {{class}} {{type}}{{required}}">{{content}}</div>',
'inputContainerError' => '<div class="input {{class}} {{type}}{{required}} error">{{content}}{{error}}</div>'
];
$this->Form->templates($myTemplates);
并使用该templateVars
选项为它们定义值
echo $this->Form->input('mobile', [
'class' => 'form-control',
'label' => false,
'templateVars' => [
'class' => 'col-md-4'
]
]);
也可以看看