此處顯示的示例(https://parse.com/docs/relations_guide#onetomany-pointers)位於iOS和Android。解析:如何使用PHP SDK創建指針數據?
是否可以使用PHP SDK創建Pointer
數據存儲?
此處顯示的示例(https://parse.com/docs/relations_guide#onetomany-pointers)位於iOS和Android。解析:如何使用PHP SDK創建指針數據?
是否可以使用PHP SDK創建Pointer
數據存儲?
我只是碰到了同樣的問題,努力使許多一對多的關係,經過一些試驗和錯誤我把它做的工作:
$obj = new ParseObject("ObjectClassName");
$obj->setAssociativeArray("relationFieldName", array('__type' => 'Pointer', 'className' => 'relationClassName', 'objectId' => 'relationObjId'));
例如,如果你想把一個本書通過這本書的作者關鍵用戶,ObjectClassName將書,relationFieldName將作者和relationClassName將_user(記得解析的特殊類的前綴爲下劃線)。
讓我知道這是否也適合你!有點令人沮喪,我在Parse's PHP documentation on relations上找不到任何關於此事的信息。我在JS之前有同樣的問題,但至少this question幫助我馬上。
我有同樣的問題,並創建和數組成爲指針不是解決問題的最佳途徑。
您可以使用SDK中的\ Parse \ ParseOject。
$pointer = parseObject::create('className', $id, true);
我發現它在ParseObject.php:
/**
* Static method which returns a new Parse Object for a given class
* Optionally creates a pointer object if the objectId is provided.
*
* @param string $className Class Name for data on Parse.
* @param string $objectId Unique identifier for existing object.
* @param bool $isPointer If the object is a pointer.
*
* @return ParseObject
*/
public static function create($className, $objectId = null, $isPointer = false)
這聽起來像你想創建一個一對多的關係。你可以使用ParseObject::getRelation
來做到這一點,這將返回一個現有的關係,或者,創建一個新的(你可以檢查出定義here)。
$obj = new ParseObject("ObjectClassName");
// get a relation (new or existing)
$relation = $obj->getRelation('myObjects');
// add objects to this relation
$relation->add([$myObject1, $myObject2, $myObject3]);
// save my object & my relation, with the new objects in it
$obj->save();
代替
如果你正在試圖做的多對多的關係,你要創建一個連接表(技術上加入「類」,像MyParseJoinClass
)。如果我誤解,你要嘗試執行一個1-1,你總是可以設置一個對象作爲一個屬性來自動創建一個指向
$obj->set('myPointer', $myPointedObject);
內部可以使用$obj->_toPointer
得到一個數組組成一個指針引用一個對象,但我會建議您利用ParseObject
中支持的關係&指針類型,而不是更容易管理。
我可以證實這個作品。 有點煩人沒有這方面的文件(或者,至少,我也找不到任何)。 –