cakePHP error remove data from model

Привет есть "модель" в ней метод "remove($a, $b = 0)" и контроллер в нем "метод1" и "метод2", не могу понять почему когда обращаюсь к "remove" от "метод1" то все работает как часы пример

$this->MyModel->remove($array, $cause);

, а когда от "метод2", то cakephp пишет ошибку

$this->MyModel->remove($id, $cause);

"Cake/Model/Datasource/DboSource.php (line 523) 'SQLSTATE[42000]: Syntax error or access violation: 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 'remove' at line 1' /Cake/Model/Datasource/DboSource.php (line 524) 'remove'"

в логах "Error: [PDOException] SQLSTATE[42000]: Syntax error or access violation: 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 'remove' at line 1"

метод в модели

public function remove($ids, $cause = 0){
    if(!$ids){
        return false;
    }
    
    if(is_array($ids)){
        $ids = implode(',', $ids);

        $remove = "UPDATE mymodels SET cause_close = '". $cause. "', in_archive = '1' WHERE id in ({$ids})";
        $this->query($remove);
    }else{
        $data = [
            'MyModel' => [
                'id' => $ids,
                'in_archive' => 1,
                'cause_close' => $cause
            ]
        ];
        $this->save($data, ['callbacks' => false, 'validate' => false]);
    }
    return true;
    
}

Я пробовал оставлять метод в модели пустым

public function remove($ids, $cause = 0){
//закомментированный код
}

ошибка все равно такая же

Так же я пробовал вызывать метод remove из метод2 вот так

$this->loadModel('Mymodel')->remove($id, $cause);

тогда ошибка такая: Call to a member function remove() on boolean

метод1 работает для списка, т.е. пользователь выбирает несколько элементов и вызывает его, метод2 работает для отдельной страницы с разницей, при вызове метода всплывает popup с выбором причины. оба POST


Ответы (0 шт):