解析PHP - 查询Relation类

时间:2017-09-14 13:17:21

标签: php parse-platform

我目前正在使用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;

非常感谢任何帮助。感谢

2 个答案:

答案 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();

希望它可以帮助任何人。