2017-12-20 27 views
0

いくつかの異なるフォームテンプレートを作成したいと思います。 CakePHPのドキュメントは、app_form.phpファイルにテンプレートを配置する方法の例です。やったよ。作品が、いくつかの異なるテンプレートを持つためにそれを行うには?私が作成したものは、アプリケーションのすべてのフォームを上書きします。マイテンプレート:CakePHP 3.xフォームテンプレートを作成

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()?> 

答えて

0

あなたがお使いのコントローラにリロードヘルパーによって、さまざまなフォームテンプレートを作成することができます。

// In a View class 
$this->loadHelper('Form', [ 
    'templates' => 'app_form', // Load app_form.php 
]); 
+0

はい、私はそれをやったし、すべて上書きされますこのようにしてアプリケーション内にフォームを作成します。しかし、フォームごとに複数のテンプレートを定義するにはどうすればよいですか? – wojtek6000

+0

1つのビューに複数のフォームテンプレートをロードし、どのように使用するのですか? – wojtek6000

関連する問題