Поле $ref->where('reference_field', '=', 'Path/To/Referenced/Document'); не работает.

.
 $projectId,
    ]);

    $ref = $db->collection('CollectionName');
    $query = $ref->where('reference_field', '=', 'Path/To/Referenced/Document');
    $snapshot = $query->documents();
    foreach ($snapshot as $document) {
        printf('Document %s returned.' . PHP_EOL, $document->id());
    }
}

Как получить результаты, в которых поле ссылки содержит заданный путь к документу / идентификатор документа?

Ответы (1)

Я только что выяснил это, посмотрев этот вопрос на javascript здесь.

Ответ таков: вы должны передать объект ссылки на документ вместо строки пути.

 $projectId,
    ]);
    
    $referenced_document = $db->document('Path/To/Referenced/Document');

    $ref = $db->collection('CollectionName');
    $query = $ref->where('reference_field', '=', $referenced_document);
    $snapshot = $query->documents();
    foreach ($snapshot as $document) {
        printf('Document %s returned.' . PHP_EOL, $document->id());
    }
}

2022 WebDevInsider