Codeigniter MongoDB обертка не работает с удалением - PullRequest
1 голос
/ 09 февраля 2012

Я занимаюсь разработкой API с использованием Codeigniter и MongoDB (оболочка Алекса Билби), и не могу заставить функцию удаления работать правильно.

Удаляет другие документы, кроме того, который я указал! Это сводит меня с ума.

Это код в моей модели:

$where = array (

  '_id' => new MongoId ($args['id'])

);

$result = $this -> mongo_db -> delete ('files', $where);

Что не так? Что-то не так с моим кодом или оберткой?

Благодарен за все комментарии!

Ответы [ 2 ]

0 голосов
/ 11 июня 2013
$where = array (

  '_id' => new MongoId ($args['id'])

);

$result = $this -> mongo_db -> where($where) -> delete_all('files');

Обратите внимание, что если вам нужно удалить на основе информации встроенного документа

$result = $this -> mongo_db -> where(array('field.value'=>'x') -> delete_all('files');
0 голосов
/ 10 февраля 2012

Я полагаю, что вы хотите:

$result = $this->mongo_db->where($where)->delete('files');

Не уверен, где вы получаете свой синтаксис - удаление не имеет функции, определенной с двумя такими параметрами (по крайней мере, в версии codeigniterОбертка, которую я использовал).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...