Tôi có chức năng đám mây trên Parse. Khi nó được gọi là nó lấy một PFObject
sau đó thêm một mối quan hệ giữa đối tượng đó và người dùng. Phần này hoạt động tốt (Nhìn vào cuối chức năng). Tôi đang gặp sự cố khi nhận các truy vấn mà chọn PFObject
để bỏ qua những người dùng đã được liên quan đếnCú pháp truy vấn quan hệ mã đám mây Parse
Đây là mã của tôi:
Parse.Cloud.define("NextMedia", function (request, response) {
var LikeRequest = Parse.Object.extend("LikeRequest");
var query = new Parse.Query(LikeRequest);
query.equalTo("completed", false);
console.log("user: " + Parse.User.current().id);
query.notEqualTo("user", Parse.User.current());
// Also only fetch if never been sent before
// HERE SHOULD USE THE BELOW RELATIONSHIP
var innerQuery = new Parse.Query(Parse.User);
innerQuery.exists(Parse.User);
query.matchesQuery("sentTo", innerQuery);
query.ascending("createdAt");
query.first({
success: function (object) {
// Successfully retrieved the object.
console.log("Got 1 object: " + object.get('mediaId'));
// Record that the user has been sent it
var user = Parse.User.current();
var relation = object.relation("sentTo"); // RELATION ADDED HERE
relation.add(user);
object.save();
response.success(object);
},
error: function (error) {
console.log("Error: " + error.code + " " + error.message);
response.error("Error getting next mediaId");
}
});
});
tôi chắc chắn rằng tôi chỉ không hiểu như thế nào cú pháp truy vấn quan hệ hoạt động.
Trên lớp LikeRequest của bạn, bạn có cột người dùng không? Tôi không hiểu query.notEqualTo ("user", Parse.User.current()); – bmurmistro
Trong phần dưới cùng, nơi nó thêm các quan hệ, đó là thêm một nhiều đến nhiều cột người dùng. – Darren
Xin lỗi vì phản hồi bị trì hoãn. Bạn đã thử một cái gì đó như thế này: var innerQuery = LikeRequest.relation ("sendTo"). Query(); innerQuery.exists (Parse.User); – bmurmistro