Note that you state:
> in my app_controller I put the function:
and then you use the function as:
> $this->User->unbindValidation('keep', array('usr_vorname',
> 'usr_nachname'), true);
In my eyes, it looks like you want to invoke the method in the User
model, but it doesn't exist there.
Please correct your code.
Enjoy,
John
On 9 Feb., 13:01, heohni <[email protected]> wrote:
> Hi,
>
> in my app_controller I put the function:
>
> function unbindValidation($type, $fields, $require=false){
> if ($type === 'remove'){
> $this->validate = array_diff_key($this->validate,
> array_flip($fields));
> }else if ($type === 'keep'){
> $this->validate = array_intersect_key($this->validate,
> array_flip($fields));
> }
>
> if ($require === true){
> foreach ($this->validate as $field=>$rules){
> if (is_array($rules)){
> $rule = key($rules);
> $this->validate[$field][$rule]['required'] = true;
> } else{
> $ruleName = (ctype_alpha($rules)) ? $rules :
> 'required';
> $this->validate[$field] =
> array($ruleName=>array('rule'=>$rules,'required'=>true));
> }
> }
> }
> }
>
> in my user.php model I added an array
> var $validate = array(.....
> with all my rules, which are working fine!
>
> No I want to use the unbindValidation function within my edit function
> form the users_controller:
>
> function edit($id = NULL){
> $this->User->unbindValidation('keep', array('usr_vorname',
> 'usr_nachname'), true);
>
> if(empty($this->data)){
> $this->data = $this->User->read(NULL, $id);
> $this->set('user', $this->User->read(NULL, $id));
> }else{
> if($this->User->save($this->data)){
> $this->Session->setFlash('Alle Änderungen wurden
> erfolgreich übernommen');
> $this->redirect(array('action'=>'index'));
> }
> }
> }
>
> But when I submit the form, I get the following message:
>
> Warning (512): SQL Error: 1064: You have an error in your SQL syntax;
> check the manual that corresponds to your MySQL server version for the
> right syntax to use near 'unbindValidation' at line 1 [CORE\cake\libs
> \model\datasources\dbo_source.php, line 684]
>
> Why is that?
> What do I have wrong?
>
> Please advise!!
--
Our newest site for the community: CakePHP Video Tutorials
http://tv.cakephp.org
Check out the new CakePHP Questions site http://ask.cakephp.org and help others
with their CakePHP related questions.
To unsubscribe from this group, send email to
[email protected] For more options, visit this group at
http://groups.google.com/group/cake-php