製品の単価を格納するフィールドの検証を作成しようとしましたが、整数をチェックする方法を示す検証に出くわしましたが2032.95
、YII2のような形式の浮動小数点数の検証が見つかりません。前もって感謝します。
*
アビレイの指示の後、私は試しました
[['quantity','round_off'],'number','numberPattern'=>'[-+]?[0-9]*.[0-9]+|[0-9]+'],
しかし、コンソールにエラーが表示されます。
製品の単価を格納するフィールドの検証を作成しようとしましたが、整数をチェックする方法を示す検証に出くわしましたが2032.95
、YII2のような形式の浮動小数点数の検証が見つかりません。前もって感謝します。
*
アビレイの指示の後、私は試しました
[['quantity','round_off'],'number','numberPattern'=>'[-+]?[0-9]*.[0-9]+|[0-9]+'],
しかし、コンソールにエラーが表示されます。
NumberValidator クラスのnumberPatternを再定義すると、あなたの場合に役立つと思います。
フォームで AJAX Validator を使用する場合:
[['quantity','round_off'], 'number',
'numberPattern' => '/^\d+(.\d{1,2})?$/'],
ビュー内:
フォームの作成時に AJAX 検証が有効になっていることを確認し、
$form = ActiveForm::begin([
'id' => 'my-form',
'enableAjaxValidation' => true,
]);
フィールドをデフォルトの入力に変更します。
$form->field($model, 'quantity')
コントローラー:
インクルード ファイル:
use yii\web\Response;
use yii\widgets\ActiveForm;
アクションの開始時にこのコードを貼り
付け、$model
ロードまたは作成後に
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) {
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($model);
}