Queries on array values broken since 2.3.1
@gut-puncture arbeitet bereits daran.
Seit 10.5.2026.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 48/100
Rechercherichtung
Start at the equalTo query serialization path in the PHP SDK and reproduce the ParseRole query shown in the issue. Compare the generated request with the expected array-value query documented in the linked Parse guide. Done means pointer queries against array-valued fields return the matching roles without breaking scalar equalTo queries.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
New Issue Checklist
- I am not disclosing a vulnerability.
- I am not just asking a question.
- I have searched through existing issues.
- I can reproduce the issue with the latest version of Parse Server and the Parse PHP SDK.
We're not running the latest Parse server version, hence I haven't checked the last item above.
Issue Description
The fix for equalTo in 2.3.1 broke queries on array values.
Steps to reproduce
For example, to fetch all roles for a specific user:
$query = ParseUser::query();
$parseUser = $query->get("someUserId", true);
$query = ParseRole::query();
$query->equalTo("users", $parseUser);
$parseRoles = $query->find(true);
Actual Outcome
In previous versions, the query sent to Parse would look like:
{
"users": {
"__type": "Pointer",
"className": "_User",
"objectId": "someUserId"
}
}
Which would give us the roles for that user back.
Expected Outcome
In 2.3.1 the query became:
{
"where": {
"users": {
"$eq": {
"__type": "Pointer",
"className": "_User",
"objectId":"someUserId"
}
}
}
}
Which does not give any roles back. users on _Role is an array with a single user in our case.
Environment
Parse PHP SDK
- SDK version: 2.3.2
- PHP version: 8.2.6
Server
- Parse Server version: 4.3.0
- Operating system: Debian
- Local or remote host (AWS, Azure, Google Cloud, Heroku, Digital Ocean, etc): AWS
Database
- System (MongoDB or Postgres): MongoDB
- Database version: 3.6
- Local or remote host (MongoDB Atlas, mLab, AWS, Azure, Google Cloud, etc): AWS
- Vorherrschende Sprache
- PHP
- Sterne
- 808
- Forks
- 340
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus parse-community/parse-php-sdk
-
Support PHP 8.4 and 8.5Evtl. vergeben @zeliard91 hat das vor 34 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 72/100
parse-community/parse-php-sdk#529 · 1 Kommentar ·
-
"unauthorized: master key is required" error on aggregate ParseQuery despite the master key is setOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
parse-community/parse-php-sdk#466 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
parse-community/parse-php-sdk#465 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 25/100
parse-community/parse-php-sdk#457 · 1 Kommentar ·
-
parse query for phpOffen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 25/100
parse-community/parse-php-sdk#456 · 1 Kommentar ·
Alle Issues in parse-community/parse-php-sdk
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
grokability/snipe-it#19869 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
sync-en
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
sync-en
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 77/100
Maintainer antworten meist innerhalb von 3 Tagen
-
Перевод устарел
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 74/100