検証ルールはCakePHPの作成に適用されていません
-
26-12-2019 - |
質問
問題のある問題は、検証規則が編集時に発生しているが、それらのどれも作成時に起動されていないことです。問題がおそらくここにあるのではなく、検証規則のいくつかはいくつかあります。
var $validate = array(
'date' => array(
'notempty' => array(
'rule' => array('notEmpty'),
'message' => 'Choose a date'
)
),
'minutes' => array(
'rule'=>'minutes',
'message' => 'Minutes cannot exceed 60',
'allowEmpty' => true
)
.
とここにはフォームがあります(編集と追加):
<?php echo $this->Form->create('Event');?>
<?php echo $this->Form->input('date', array('class'=>'datepicker', 'type'=>'text', 'label'=>__('Date*')));?>
<?php echo $this->Form->end(__('Save edit'));?>
<?php echo $this->Form->create('Event');?>
<?php echo $this->Form->input('date', array('class'=>'datepicker', 'type'=>'text', 'value'=>$date, 'label'=>__('Date*'))); ?>
<?php echo $this->Form->end(__('Save'));?>
.
および検証は、アプリケーション全体として同じであるため、どのコントローラ関数では無効になっていないため、他のすべてのモデルと完全に動作します。私はそれがシンプルなものである必要があると思いますが、私はそれを働かせることはできません。
あらゆる助けが大いに評価されています。
解決
EventsController.phpファイルにこのコードを試してください。
あなたのadd()関数の関数:
コード:
if ($this->request->is('post')) {
$this->Event->set($this->request->data);
if($this->Event->validates()) {
if ($this->Event->save($this->request->data)) {
// Data saved and validated
}
}
}
.
私はこのコードがあなたを助けることを願っています。
ありがとうございました!
他のヒント
モデルテーブルの両方の操作で別々に検証規則を使用するだけです。
public function validationadd(Validator $validator){
->notEmpty('first_name');
return $validator;
}
public function validationedit(Validator $validator){
->notEmpty('first_name');
return $validator;
}
. 所属していません StackOverflow