Поиск по индексированному свойству mongodb не возвращает результатов после обновления laravel - PullRequest
0 голосов
/ 28 мая 2020

Недавно я обновил Laravel с 5.5 до 6. Теперь, когда я выполняю запрос ниже, он не возвращает результата, как в 5.5. Я использую пакет mongodb JensSegers. Asset_id проиндексирован

Это мой метод.

public function show($id)
{
    return response()->json(Asset::where('asset_id', $id)->get());
}

Моя коллекция выглядит так:

{
    "_id": {
        "$oid": "5b28b21a943ee732820286be"
    },
    "asset_id": {
        "$oid": "5b28b202943ee732820282f3"
    },
    "parent_asset_id": {
        "$oid": "5b28b21a943ee732820286bd"
    },
    "updated_by": 1,
    "updated_at": {
        "$date": "2019-08-12T22:12:10.000Z"
    },
    "created_by": 1,
    "created_at": {
        "$date": "2018-06-19T07:34:50.000Z"
    },
    "document_ids": [
        "5b28b2c9943ee73282029a35",
        "5b28b2c9943ee73282029a37",
        "5b28b2ca943ee73282029a39",
        "5b28b2ca943ee73282029a3b",
        "5b28b2ca943ee73282029a3d",
        "5b28b2cb943ee73282029a3f"
    ],
    "workOrderAssets": [
        "5b28b203943ee73282028313:1",
        "5b28b209943ee732820283fd:1",
        "5b28b203943ee7328202830f:1",
        "5b28b203943ee7328202830d:1",
        "5b28b203943ee7328202830b:1",
        "5b28b203943ee73282028309:1",
        "5b28b203943ee73282028307:1",
        "5b28b203943ee732820282f5:1",
        "5b28b202943ee732820282f3:1"
    ],
    "workOrderIds": [
        1
    ]
}

1 Ответ

0 голосов
/ 28 мая 2020

Нужно искать по objectId и использовать MongoDB \ BSON \ ObjectId;

...