Я пытаюсь запросить подборку в Google Firestore. Моя цель — получить все записи с startDate (хранящимся в типе данных Google Firestore Timestamp) после 1 января 1970 года.
Я использую GoogleCloud Firestore PHP SDK для этого:
http://googlecloudplatform.github.io/google-cloud-php/#/docs/cloud-firestore/v0.9.0/firestore/querysnapshot
Вот мой код:
$config = array(
"projectId" => "xxx-test",
"keyFile" => json_decode(file_get_contents("/xxx/firebase_auth.json"), true)
);
$firestore = new FirestoreClient($config);
$collection = $firestore->collection("/clients/-LXXXXXX/trips");
$query = $collection->where("startDate", ">=", new Timestamp(new \DateTime("Thu Jan 1st 1970")));
var_dump($query->documents());
И я получаю эту ошибку:
Exception 'Google\Cloud\Core\Exception\BadRequestException' with message
'{
"message": "Document parent name \"projects\/xxx-test\/databases\/(default)\/documents\/\/clients\/-LXXXXXX\" lacks a collection id at index 53.",
"code": 3,
"status": "INVALID_ARGUMENT",
"details": []
}'
Любая помощь с благодарностью.
Путь к коллекции не работает таким образом:
$collection = $firestore->collection("clients")->document("-LXXXXXX")->collection("trips");
Других решений пока нет …