Создать новый объект с отношением в синтаксическом анализе с React Native
По-видимому, нет документации о том, как создать новый объект Parse с отношением с Parse-ReactNative с использованием ParseReact.Mutation.Create
. Я прибегнул к этому:
function createRow(relatedObject, data) {
ParseReact.Mutation.Create('objectClass', data)
.dispatch()
.then(function(newRow) {
ParseReact.Mutation.AddRelation(newRow, 'relationColumn', relatedObject)
});
}
, который создает новый objectClass
Объект синтаксического анализа, но столбец relationColumn
не отображает отношение с данным relatedObject
.
Есть идеи, как это можно сделать, предпочтительно в одном запросе с ParseReact.Mutation.Create
?
1 ответ:
Итак, мой код работает с
ParseReact.Mutation.AddRelation
, Вот он:ParseReact.Mutation.AddRelation({ "className": newRow.className, "objectId": newRow.id.objectId}, 'groceryRequestRelation',[{ "__type":"Pointer", "className":"ClassThePointerPointingTo", "objectId":"ObjectIdOfClassThePointerIsPointingTo" }]).dispatch()
@naoisegolden вы не поставили
Еще одна вещь, которая заняла у меня целую вечность, чтобы понять, что я использую неправильно.dispatch()
в концеAddRelation
, так что это может быть проблемой.objectId
в пределах моегоAddRelation
, я должно быть используяobjectId
класса, который указатель указывает на, но я использовалobjectId
класса, к которому принадлежитrelation
к...Если это все еще не работает для вас, попробуйте сделать это другим способом:
var data = { "groceryRequestRelation":{"__op":"AddRelation", "objects": [{ "__type":"Pointer", "className":"ClassThePointerIsPointingTo", "objectId":"ObjectIdOfClassThePointerIsPointingTo" } ] } }; var url = "https://api.parse.com"; url += "/1/classes/Classname/objectId"; fetch(url, { method: 'put', headers: { 'Accept': 'application/json', 'X-Parse-Application-Id': PARSE_APP_ID, 'X-Parse-REST-API-Key': PARSE_REST_KEY, 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then((response) => { console.log("inside add relation rest") console.log(response); return response.json(); }) .then((responseText) => { console.log(responseText); }) .catch((error) => { console.warn(error); }) .done();