#php #cakephp
#php #cakephp
Вопрос:
Я хочу отсортировать значения в Dropbox. для этого я добавил этот код, который приведен ниже. Когда я попытался добавить этот код, он выдает ошибку. пожалуйста, помогите мне в этом.
$zones = $this->{$this->modelClass}
->Zone->find("list", array('conditions' =>
array('is_active' => 1,'order' => array('name' => 'asc'))));
Ошибка приведена ниже
SQLSTATE [42000]: синтаксическая ошибка или нарушение доступа: 1064 У вас ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с ‘order = (‘asc’)’ в строке 1
SQL-запрос:
SELECT `Zone`.`id`, `Zone`.`name`
FROM `develop_market_pulse`.`zones` AS `Zone`
WHERE `is_active` = '1'
AND order = ('asc')
Примечание: Если вы хотите настроить это сообщение об ошибке, создайте app View Errors pdo_error.ctp
Комментарии:
1. Что за ошибка?
2. У вас ошибка в вашем SQL-запросе, это должно быть, например:
'ORDER BY name ASC'
вместо'order = ('asc')'
3. как мы можем записать это в массив?
Ответ №1:
order
Не должно быть в conditions
:
$zones = $this->{$this->modelClass}->Zone
->find("list", array(
'conditions' => array('is_active' => 1),
'order' => array('name' => 'asc')
));
Ответ №2:
Попробуйте это
$zones = $this->{$this->modelClass}->Zone->find("list", [
'conditions' => ['is_active' => 1],
'order' => ['name' => 'ASC']
]);