Я пытаюсь использовать Codeigniter с codeigniter-mongodb-library/tree/v2 в чтобы подключиться к монго и обновить документы с помощью этой структуры:
{
"_id" : ObjectId("50fd8bd460e958aa38000002"),
"created_at" : 1358793684,
"updated_at" : 1358793684,
"is_active" : 0,
"memberships" : [
{
}
],
"first_models" : [
[ ]
],
"second_models" : [
[ ]
],
"pages" : [
[ ]
]
}
Все, что я хочу, это обновить какой-то документ с помощью данного _id. В частности, мне нужно добавить элементы в массив first_models. Из моей модели Codeigniter я вызываю это:
$result = $this->mongo_db
->push(array('_id' => '50fd8bd460e958aa38000002'),array('first_models' => array('Some text here')))
->update($this->collections['sites']);
Я получаю эту ошибку, когда пытаюсь обновить один конкретный документ:
Mod on _id not allowed
Кажется, есть некоторый конфликт с данным _id... Я что-то упускаю и не знаю что :( Я использую Mongodb 2.2.2 с Codeigniter 2.1.3, PHP5.4 и Apache2.