Я работаю над интерфейсом социальных приложений Angualar, Backend laravel и базой данных Mongodb. У меня есть модель вроде:
Hoots
-----------------
- _id
- content
- publish_id
Article
-----------------
- _id
- content
- publish_id
Story
-----------------
- _id
- content
- publish_id
Publish
-----------------
- _id
- post_id
- type
- user_id
Идентификатор сообщения в публикации принадлежит _id в сообщениях, статьях и рассказах, где тип означает, что это сообщение, статья или рассказ.
У меня есть такая модель
//Article model
class Article extends Eloquent {
public function getpublish(){
return $this->hasMany('Publish','post_id');
}
}
//Story model
class Story extends Eloquent {
public function get_publish(){
return $this->hasMany('Publish','post_id');
}
}
//Hoots model
class Hoots extends Eloquent {
public function get_publ(){
return $this->hasMany('Publish','post_id');
}
}
//Publish model
class Publish extends Eloquent {
public function getdata(){
return $this->BelongsTo('Hoots','Article','Story','publish_id');
}
}
Я использую
Publish::with('getdata')->where('user_id',Auth::user()->id)->get();
используя это, я могу получить только данные публикации вместе с соответствующими данными post_id в одной модели, то есть только улюлюкает. Я хочу это из всех трех таблиц.
Я хочу получить данные модели публикации с соответствующими данными post_id. Как я могу выполнить этот единственный запрос, используя красноречие.