我目前正在使用Parse SDK的PHP库,我想对一行的关系对象进行一次equalTo查询。
基本上,获取关系类LineData列' status'的所有行。 = 1。
有没有人知道如何实现这个目标?我无法在官方文档或Google搜索中找到任何内容。
$query = new ParseQuery("Lines");
$innerQuery = $query->get("LineData")->getQuery()->find();
$innerQuery->equalTo("status", ['__type' => "Pointer", 'className'=> "States", 'objectId' => "XvGh5HkSAw"]);
$results = $innerQuery->find();
return $results;
非常感谢任何帮助。感谢
答案 0 :(得分:1)
在关系列上使用getRelation(),而不是get()
$user = ParseUser::getCurrentUser();
$relation = $user->getRelation("likes");
$query = $relation->getQuery();
$query->equalTo("title", "I'm Hungry");
$postsLiked = $query->find();
http://docs.parseplatform.org/php/guide/#many-to-many-relationships
答案 1 :(得分:0)
我设法自己解决了这个问题。似乎我们必须对子类进行查询,然后将该查询与父类匹配。
$innerQuery = new ParseQuery("LineData");
$innerQuery->equalTo("Status", ['__type' => "Pointer", 'className'=> "States", 'objectId' => "XvGh5HkSAw"]);
$query = new ParseQuery("Lines");
$query->matchesQuery("InnerLine", $innerQuery);
$all = $query->find();
希望它可以帮助任何人。