首页 > 解决方案 > 如何将一个集合中的 id 存储到 Laravel 中的另一个 MongoDB 集合中

问题描述

我有两个 Collection 类别和子类别。一个类别可以有 0 个或多个子类别,这就是为什么我需要它们之间的关系我如何将 _id oa 文档表单类别集合存储到子类别集合的文档。

类别

{
    "_id" : ObjectId("5b8abe366a44fa2d080065d2"),
    "Title" : "Aptitude",
    "Description" : "Aptitude",
    "Slug" : "aptitude",
    "updated_at" : ISODate("2018-09-01T16:28:38Z"),
    "created_at" : ISODate("2018-09-01T16:28:38Z")
 }

子类别

{
    "_id" : ObjectId("5b9abbd06a44fa207c001674"),
    "Title" : "Aithmatic Apptitude",
    "Description" : "Aithmatic Apptitude",
    "Slug" : "arithmatic_aptitude",
    "CategoryId" : "5b8abe366a44fa2d080065d2",
    "updated_at" : ISODate("2018-09-13T19:34:40Z"),
    "created_at" : ISODate("2018-09-13T19:34:40Z")
}
{
    "_id" : ObjectId("5b9ac7e86a44fa207c001678"),
    "Title" : "Reasoning",
    "Description" : "Reasoning",
    "Slug" : "reasoning",
    "CategoryId" : "5b8abe366a44fa2d080065d2",
    "updated_at" : ISODate("2018-09-13T20:26:16Z"),
    "created_at" : ISODate("2018-09-13T20:26:16Z")
}

如您所见,我将 category_id 存储在子类别集合中的字符串"CategoryId" : "5b8abe366a44fa2d080065d2",

这是我的存储代码

$subcategory = Subcategory::create(
    [
        'Title' => $request->Title, 
        'Description' => $request->Description,
        'Slug' => $request->Slug,
        'CategoryId' =>  $request->CategoryId,
    ]

);

想痛它喜欢实际参考"category_id" ObjectId("5b8abe366a44fa2d080065d2")。转换这个命令db.subcategory.insert({Title:"Example",Description:"Example", Slug:"Example",CategoryId:db.category.find({_id:"5b9abc8cb3562ec4e990ec5b"})._id})怎么可能,请帮忙

标签: phpmongodblaraveleloquentlaravel-5.1

解决方案


推荐阅读