0
私はPHPコードのREST APIから構文解析のためにphp sdkに変換しています。どのようにParseQuery :: orQueriesをmatchesQueryとphp parse-server sdkを組み合わせて使用しますか
このREST APIクエリを解析用のphp-sdkの正しい構文に変換する際に問題があり、いくつかのポインタを使用できます。
これは動作中のREST APIクエリです。
where=
{"phostId":
{"__type":"Pointer","className":"Hosts","objectId":"'.$hostObjId.'"},
"isCompany":false,
"expunged":{"$nin":[true]},
"$or":[
{"endDate":
{"$gte":
{
"__type":"Date",
"iso":"'.$now.'"
}
}
},
{"isPerm":true}
]
}
&keys=pvisitorId,company,isPerm,startDate,endDate,name
&include=pvisitorId&order=-name';
私は問題のないポインタに基づいて問い合わせることができますが、私はOR節での作業方法を理解できません。
これはこれまで私が行ってきたことです。
//Query the pointer for an object id matching our user session id
$innerQuery = new ParseQuery("Hosts");
$innerQuery->equalTo("objectId",$_SESSION['host_object_id']);
//Building two queries used for the OR condition
$endDate = new ParseQuery("Authorizations");
$endDate->greaterThan("endDate", $date);
$isPerm = new ParseQuery("Authorizations");
$isPerm->equalTo("isPerm", True);
//create primary query
$query = new ParseQuery("Authorizations");
//set filters
$query->equalTo("isCompany",False);
$query->notEqualTo("expunged",True);
////This is what I am trying to add to $query just not sure how to do it.
$mainQuery = ParseQuery::orQueries([$endDate, $isPerm]);
$results1 = $mainQuery->find();
//Sort, Limit, add InnerQuery
$query->addDescending("name");
$query->limit(1);
$query->matchesQuery("phostId", $innerQuery);
// All results:
$results = $query->find();
私が紛失しているものについては、事前にお手数ですがありがとうございます。
ありがとうYe Min Htut。私はORクエリを全体的なクエリに結合する場所を見てもまだ苦労しています。 – OTG
ありがとうYe Min Htut。私はORクエリを全体的なクエリに結合する場所を見てもまだ苦労しています。 私のコードには5つの異なるクエリがあります。 1)私のポインタ用** $ innerQuery ** 2)私のORクエリ用** $ endDateと$ isPerm ** 1)これは実際のORクエリです。** $ mainQuery ** 1)最後に最後のクエリまたは親の場所で、上記のすべてのクエリの結果を見たいと思っています。** $ query ** 親クエリのどこかにORクエリをネストできるはずです。 – OTG
あなたはあなたの日付オブジェクトをチェックしたり、あなたはあなたの初期日付オブジェクトをどのように初期化して答えを編集できますか?それは何かが間違っているように見える日付オブジェクトです。 –