2015-06-18 13 views
5

W CakePHP 2.0 mogę dodać atrybuty "przed", "po" i "separatora" do przycisku opcji. Atrybuty stworzą element div pomiędzy opcjami radiowymi. Wygląda na to, że te opcje zostały usunięte z CakePHP 3.0. Jak mogę to zrobić w CakePHP 3.0?Przycisk radiowy CakePHP 3.0

<div class="col-xs-6 col-sm-6 col-md-6 col-lg-6"> 
    <div class="square-screening single-row screen-radio"> 
     <?php echo $this->Form->input('q1',array(
      'legend'=> false, 
      'type'=>'radio', 
      'options'=> $options, 
      'required'=>'required', 
      'before' => '<div class="radio-inline screen-center screen-radio">', 
      'separator' => '</div><div class="radio-inline screen-center screen-radio">', 
      'after' => '</div>', 
    )); ?> 
    </div> 
</div> 

Odpowiedz

8

Trzeba użyć FormHelper Szablony. Z podręcznika migracji:

Opcje separatora, między i legendy zostały usunięte z radia(). Możesz teraz użyć szablonów do zmiany zawijania HTML.

Elementy div, before, after, between i errorMessage zostały usunięte z input().

więc w przypadku korzystania z tego

echo $this->Form->input('q1', [ 
    'templates' => [ 
     'radioWrapper' => '<div class="radio-inline screen-center screen-radio">{{label}}</div>' 
    ], 
    'type' => 'radio', 
    'options' => $options, 
    'required' => 'required', 
    'label' => false 
]); 

Patrz także:

1

To bardzo proste.

Możesz użyć helpera formularza.

Cake\View\Helper\FormHelper::radio(string $fieldName, array $options, array $attributes) 

Korzystanie

echo $this->Form->radio(
    'favorite_color', 
    [ 
     ['value' => 'r', 'text' => 'Red', 'style' => 'color:red;'], 
     ['value' => 'u', 'text' => 'Blue', 'style' => 'color:blue;'], 
     ['value' => 'g', 'text' => 'Green', 'style' => 'color:green;'], 
    ] 
); 

Docs

+0

Hi Soft Kitty, czytałem dokumenty. To jest, gdy chcesz dodać niestandardowe atrybuty do elementu wejściowego. Mam wątpliwości co do tego, jak dodać opcję "

' and closing '
" między opcją radiową, a nie atrybut w opcji radiowej. Dzięki. – DANLEE

+0

Witaj DANLEE. Możesz zobaczyć ten rozdział dokumentacji. http://book.cakephp.org/3.0/en/views/helpers/form.html#customizing-the-templates-formhelper-uses Jest przy użyciu szablonów, które mogą się połączyć z wejściem html. –