CakePHP Form Helper только что сгенерировал слишком много кода для меня - PullRequest
1 голос
/ 13 июля 2010

Я использую cakePHP. Я использовал встроенный помощник по формам cakePHP для создания текстового поля ввода:

echo $form->input('quote', array('label'=>'Post Number', 'class'=>''));

Но когда я посмотрел исходный код HTML, я обнаружил следующее:

<div class="input text">
<label for="ReplyQuote">Post Number</label>
<input name="data[Reply][quote]" type="text" class="" maxlength="12" value="1" id="ReplyQuote" />
</div>  

Это действительно более чем достаточно. Я имею в виду код, сгенерированный встроенным помощником форм Cake.
Эти теги DIV с классом, названным по странному соглашению об именах, не помогают потому что между именами классов есть пробел, например:

 <div class="input text">

Есть ли у CakePHP какие-либо опции, позволяющие пользователям пропускать эти теги DIV?

Ответы [ 2 ]

5 голосов
/ 13 июля 2010

Да.

Проверьте массив опций, который вы можете передать в метод FormHelper :: input ().Ссылка на книгу: http://book.cakephp.org/view/189/Automagic-Form-Elements

Короче говоря, помощник формы добавляет два разных класса к div - input и text.Если вам не нужен div, просто выполните:

echo $form->input( 'quote', array( 'label' => 'Post Number', 'div' => false ) );

Установка значения options ['class'] влияет только на селектор класса, назначенный самому фактическому вводу (см. В своем HTML-коде, как вводтег имеет класс = ""?)

1 голос
/ 13 июля 2010

вы также можете использовать $ form-> text () для поля ввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...