CakePHPでハマったことその2(バリデーション)

var $validate = array(
        'user_id' => VALID_NOT_EMPTY,
        'url' => array(
                'rule' => 'url',
                'message' => 'url ja nai yo'
        ),
        'count' => VALID_NUMBER
);

ならOKで

var $validate = array(
        'user_id' => array(
        VALID_NOT_EMPTY,
               'message' => 'user id pleeeeeeze',
        ),
        'url' => array(
               'rule' => 'url',
               'message' => 'url ja nai yo',
        ),
        'count' => array(
               VALID_NUMBER,
               'message' => 'suuji ja nai yo',
        )
);

だと
Warning (2): preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash [hoge\cake\libs\model\model.php, line 2113]
のエラーが出ます。messageの使い方が間違ってるのかな。でも上の例でURLじゃ無かった場合url ja nai yoが出てるから、何か勘違いかも。

解決しました。

var $validate = array(
        'user_id' => array(
                'rule' => VALID_NOT_EMPTY,
                'message' => 'user id pleeeeeeze',
        ),
        'url' => array(
                'rule' => 'url',
                'message' => 'url ja nai yo',
        ),
        'count' => array(
                'rule' => VALID_NUMBER,
                'message' => 'suuji ja nai yo',
        )
);

これでオッケーーイ

広告

CakePHPでハマったことその2(バリデーション)」への1件のフィードバック

  1. Thank you very much 🙂
    I was searching a long time to resolve this problem, and even if I don't understand Japanese, you gave me the solution.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中