CakePHP 3.x创建表单模板

问题描述 投票:0回答:1

我想创建几个不同的表单模板。 CakePHP文档是如何在app_form.php文件中放置模板的示例。我做的。工作,但如何做到有几个不同的模板?我创建的那个覆盖了应用程序中的所有表单。我的模板:

    return [
        'formStart' => '<form class="form-horizontal" {{attrs}}>',

        'legend' => '<legend>{{text}}</legend>',
        'inputContainerError' => '<div class="input {{class}} {{type}}{{required}} error">{{content}}{{error}}</div>',
        'inputContainer'=>'<div class="form-group">
                    <label class="col-md-4 control-label">{{legend}}</label>
                    <div class="col-md-8">{{content}}</div></div>',
        'input'=>'<input type="{{type}}" name="{{name}}" class="form-control input-small" {{attrs}} />',
        'submitContainer'=>'<div class="form-actions">
                    <div class="row">
                        <div class="col-md-offset-3 col-md-9">
                            {{content}}
                        </div>
                    </div>
                </div>',
        'select' => '<div class="form-group">
                    <label class="col-md-4 control-label" {{attrs}}>{{legend}}</label>
                    <div class="col-md-8"><select class="form-control input medium" name="{{name}}"{{attrs}}>{{content}}</select></div></div>',
        'label' => '<label class="col-md-4 control-label" {{attrs}}>{{text}}{{label}}</label>',

];

我的随机形式:

<?= $this->Form->create()?>
<?= $this->Form->control("domyslny",['type'=>'text','label'=>"dupa"])?>
<?= $this->Form->select("gs_category_id",$listGsMenu,['id'=>'gs_category_id','label'=>"GS category"]) ?>
<?= $this->Form->select("tim_category_id",$listTimMenu,['id'=>'tim_category_id']) ?>
<?= $this->Form->submit(__d('Categories','Submit'),['class'=>'btn btn-primary'])?>
<?= $this->Form->end()?>
php forms templates cakephp cakephp-3.x
1个回答
0
投票

您可以通过在控制器中重新加载帮助程序来创建许多不同的表单模板:

// In a View class
$this->loadHelper('Form', [
    'templates' => 'app_form', // Load app_form.php
]);
© www.soinside.com 2019 - 2024. All rights reserved.