Я использую Laravel4 PHP Framework, мое веб-приложение должно обрабатывать API-интерфейсы формата JSON.
Первая часть моей проблемы заключается в том, что каждый раз, когда я получаю подписку, веб-приложение получает идентификатор deviceID и listID (где идентификатор списка - это список, который был подписан устройством, имеющим идентификатор устройства). Для каждого полученного идентификатора устройства мы должны создать blob, имеющий идентификатор устройства, например
{
deviceID:........,
subscription:[{listID:1},{listID:2}.......]
}
когда одно и то же устройство подписывается на несколько списков, я должен обновлять подписку, как только при подписке на новое устройство новый документ должен быть создан, как указано выше.
Вторая часть моей проблемы заключается в том, что наша сеть создаст кампании для каждого списка. Каждая кампания будет иметь такие атрибуты, как Title, Icon, Image, Подробное описание и т.д., Когда кампания включена, эта кампания должна быть вставлена в массив предложений выше документ как объект Как:
{
deviceID:........,
subscription:[{listID:1},{listID:2}.......],
offers [{campaign1}]
}
В кампании будет много полей.
я пытался
db.subscribers.insert(
{
_id:98745334,
subscriptions: [{
list_id: "14Q3"}, {list_id: "8989"}
],
offers: [ { title: "50% off", qty: 25 }, { title: "20% off", qty: 50 } ],
})
Это сработало. Но я не мог вставлять или извлекать или обновлять любые данные с помощью Laravel4.
Я использую MongoDB и Laravel4
Извините за плохой английский Пожалуйста, помогите мне
Как я преуспел в том, чтобы вставить следующее
DB::connection('mongodb')->collection('subscribers')->insert(array(
'_id' => $subscriber->device_id,
'subscriptions' => array(array('list_id' => $subscriber->list1_id)),
));
Для ввода в массив Subscriptions я использовал следующий код
Subscription::where('_id',$subscriber->device_id)->push('subscriptions', array('list_id' => $subscriber->list1_id));