【PHP】フレームワーク CakePHP 19ホール目【v3.3】 [無断転載禁止]©2ch.net (979レス)
前次1-
抽出解除 レス栞

385
(4): 2018/03/12(月)21:59 ID:bfeo5mri(1) AAS
Cake3のValidationで質問です。

int型の項目にtextフォームからデータを登録したいのですが、「a」と入力した際に
「This field cannot be left empty」というメッセージが表示されます。
入力が無視されているようなのですが、この無視する挙動を無効にする方法はありますか?
下記のような実装なんですが、「a」と入力したら「Invalid Data'」と表示されることを期待してます。

CREATE TABLE `hoge` (
`id` int(11) NOT NULL AUTO_INCREMENT,
省16
386
(1): 2018/03/13(火)01:16 ID:??? AAS
>>385
第2引数「true」がぬけてるからでは?
->add('sort',[
'naturalNumber'=>[
'rule' => ['naturalNumber', true],
'message'=>'Invalid Data',
]
省2
389: 385 2018/03/13(火)12:01 ID:rXiYzlgL(1) AAS
>>386
引数trueつけても同様でした(省略の場合はfalseが初期値でした)。

コードを変えずに、DB定義でsortをint→varcharに変えると意図した動作になるんですよね。

validationの際にDB定義を見ているとしか思えない…。どうにかしてこの挙動を無効にしたい…。
397: 385 2018/03/16(金)16:13 ID:??? AAS
解決しました。

どうしてもvalidationを無効にはできなかったので、結局schemaの設定で型をstringにして逃げました。
411
(1): 385 2018/04/16(月)15:50 ID:??? AAS
>>410
アップデートがハードル高杉です
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.285s*