Самореференция Laravel MongoDB

Я сделал приложение Laravel 5 с MongoDB. Для MongoDB я использую jenssegers / laravel-mongodb.

У меня есть объект MongoDB, как это:

{
"_id" : ObjectId("556c47677347b041b6004bfd"),
"name" : "Lucht?",
"type" : "onderzoeksvragen",
"levels" : [
"5",
"6"],
"data" : {
"name" : "Lucht?",
"description" : "<p>\n\tWat is lucht?</p>\n<p>\n\tHoe sterk is lucht?</p>\n<p>\n\tWat kun je met lucht?</p>\n",
"coach_information" : null
},
"updated_at" : ISODate("2015-06-01T11:52:23.399Z"),
"created_at" : ISODate("2015-06-01T11:52:07.536Z"),
"related_ids" : [
"556c47627347b041b6004263"]
}

Поле related_ids содержит массив с ObjectId, которые связаны с этим объектом. Я хочу получить этот объект со связанными объектами. Связанные объекты того же типа, что и основной объект. Итак, они находятся в одной коллекции.

Я прочитал документацию по Github (https://github.com/jenssegers/laravel-mongodb) и нашел это:

Отношение ownToMany не будет использовать сводную «таблицу», но будет выдвигать идентификаторы в related_ids атрибут вместо.

используйте Jenssegers \ Mongodb \ Model как Eloquent;

класс User расширяет Eloquent {

public function groups()
{
return $this->belongsToMany('Group', null, 'users', 'groups');
}

}

Но это не работает для меня. Посмотрите на мой код:

Контроллер ExploreController.php

$explore = Explore::with('related')->find('556c47677347b041b6004bfd');

Модель Explore.php

public function related()
{
$this->belongsToMany('App\Explore', null, 'explore' 'explore');
}

Результатом этого является только основной объект, а не связанные объекты.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]