cakephp, validate error

后端 未结 1 522
一整个雨季
一整个雨季 2020-12-19 14:03

I updated some data by inserting it into the fields and clicking on the update button, but validates() is always returning false. All the fields are filled corr

1条回答
  •  感动是毒
    2020-12-19 14:46

    Check this post for some tips. The relevant ones are given here.

    1. Save() does not work! Sometimes it happens that save() fails without any obvious reason. Your data array looks fine and you’ve built the form correctly, etc., etc., but no query was executed. It is very possible that save had failed due to validation errors. Maybe you are updating some model and, while the current fields in the form pass the validation, there is a chance that some “other ones” are causing the validation rules to fail. An easy (and helpful) way to see what’s going on with validation is to do pr($this->validationErrors); in your view. By employing this method you’ll see exactly what’s happening with your model’s validation. The other option is to pass false as a second parameter to save(); in order to disable the validation. However, the latter method does not give much of a hint and should not be used to fix a failing problem, but rather to purposely avoid validation.

    2. Save() still does not work! Do you have beforeSave(); in your model or app model? Always double-check for this method, and even more importantly, ensure that it returns true.

    3. Validating on create or update CakePHP has an 'on' key to be used in your $validate array. It allows you to specify whether the rule should be enforced during a new record creation or during an update of an existing record. For example, if you only want to check for a unique email address when you are creating a new User account, you would add 'on' => 'create' to your $validate array. Therefore, this rule will be ignored when you are updating/editing some user.

    0 讨论(0)
提交回复
热议问题