5

次の問題があります。(チュートリアルに基づいて) フォーム検証を作成しました。テキスト フィールドは問題なく動作しますが、整数フィールドの動作は奇妙です。

これは私のバリデータです:

        $inputFilter->add($factory->createInput(array(
            'name'     => 'zip',
            'required' => false,
            'filters'  => array(
                array('name' => 'Int'),
            ),
        )));

他のフィルターと同様に、私の Entity.php 内にあります。奇妙なことに、これは文字列さえも受け入れず、requiredに設定すると を無視しtrueます。私はこれを置き換えようとしましIntDigitsが、フォームは受け入れrequiredますが、文字列は受け入れます。

何か案は?ありがとう!

4

3 に答える 3

10

Betweenバリデーターを使用してみてください。

$inputFilter->add($factory->createInput(array(
            'name'     => 'zip',
            'required' => true,
            'filters'  => array(
                array('name' => 'Int'),
            ),
            'validators' => array(
              array(
                  'name' => 'Between',
                  'options' => array(
                      'min' => 1,
                      'max' => 1000,
                  ),
              ),
            ),
        )));
于 2012-12-18T11:22:51.213 に答える