この質問には複数のDBMS関連の回答が含まれることがありますが、そうではない可能性があることを理解しています。Mongooseのpopulate()メソッドと同等のLaravel(Eloquent)
私は、User
と彼のPosts
のように、バックエンドのデータを非同期に取得する必要があります。私が持っているしたいのですが結果はまたの配列を含むように私のVueVMのデータでusers
オブジェクトである
mounted: function() {
axios.get('/users')
.then((response) => {
this.users = response.data;
})
.catch(function (err) {
// Handle this
});
}
:それはいいだろうように、私のような何かを書くために、フロントエンドにAxiosでVue2を使用しています各User
のposts
。現在、次のように私は私のバックエンド側コントローラのカスタム連想配列を作成:
$posts = Post::where('user_id', $id)->get();
return json_encode(['user' => $user, 'posts' => $posts]);
あるいは、実現可能な、私もかなり便利ですhas_many
方法を、使用しますが、私はこのソリューションはかなり醜いと再利用性を欠く見つけるを。
MongooseとMongoDBでは、私はpopulate()
メソッドを使用しますが、これはEloquentでこれと同等のものを見つけることができません。
提案がありますか?
うん、そうだった。申し訳ありませんが、私はドキュメントにもっと時間を費やす必要がありました。詳細な情報をお探しの場合は、正しいセクションは https://laravel.com/docs/5.5/eloquent-relationships#eager-loadingです。 – ibanjo