CakePHP

Formヘルパーでラジオボタンを個別に出力させる

CSRF対応などを考えるとFormヘルパーは便利ですが、設定できるオプション情報を理解していないといろいろ躓きます。
ラジオボタンを個別に出力したい場合、以下のどちらかがつかえるのですが、さらっとやろうとするとうまくいきません。

FormHelper::input(string $fieldName, array $options = array())
FormHelper::radio(string $fieldName, array $options, array $attributes)

次のような設定でも出力自体は問題ないのですが、これだと選んだ値が送信されません。

<?php 
echo "A:" . $form->radio('gender', array(1 => 'A'));
echo "B:" . $form->radio('gender', array(2 => 'B'));
?>

次のようにhiddenFieldオプションにfalseを設定する必要があります。

<?php 
echo "A:" . $form->radio('gender', array(1 => 'A'), array('hiddenField' => false));
echo "B:" . $form->radio('gender', array(2 => 'B'), array('hiddenField' => false));
?>

関連記事