2017-02-14 3 views
0

구문 분석 서버를 사용하여 특정 사용자에게 푸시 알림을 보내려고합니다. 그러나 설치 클래스에는이 설치가있는 사용자를 가리키는 사용자 열이 없습니다. 따라서 설치 쿼리는 아무 것도 반환하지 않습니다. 내 질문은 설치 클래스가 자동으로 사용자 열을 작성해야합니까, 아니면 어떻게 든 그들을 연관시켜야합니까? 그렇다면 어떤 도움을 주시면 감사하겠습니다.구문 분석 서버 - 설치 클래스 누락 사용자 열

P. 클라우드 코드를 사용하여 푸시 알림을 보내고 있습니다. 그래서 저는 자바 스크립트를 사용하고 있습니다.

+2

... 이상적인 방법입니다 –

답변

1

설치 클래스는 자동으로 사용자 열을 설정하지 않으므로 수동으로해야합니다.

사용자를 만들고 저장 한 다음 성공한 콜백에 저장된 User 개체가 매개 변수로 포함되어 있으면 설치 문서에서 사용자를 설정할 수 있습니다. 여기

가 빠른 조각 : 당신은 클라이언트에서 새 설치를 만들 설치 클래스에 사용자 ID를 저장할 때 수동 설치 클래스와 사용자 클래스 (포인터)를 연결해야

var currentInstallation; 
installationModule.getInstallationById(installationId) 
    .then(function (installation) { 
    if (installation) { 
     currentInstallation = installation; 
     var user = createParseUser(newUser); 
     return user.save(); 
    } 
    else { 
     // return error 
    } 
    }) 
    .then(function (user) { 
    currentInstallation.set('user', user); 
    return currentInstallation.save() 
    }, function (error) { 
    // TODO: handle error 
    }); 
+0

감사합니다. Parse.User에 대한 afterSave 클라우드 기능을 수행 할 수 있습니까? 또는 Parse.Session에 대한 afterSave를 수행하는 것이 좋습니다. 다른 사용자가 동일한 장치에서 로그인 할 수 있기 때문입니다. 당신의 생각은 인정 될 것입니다. –

+0

기꺼이 내 대답이 도움이되었습니다. 트리거에 관해서는, Parse.Session은 다른 클래스와 달리 Cloud Code 트리거를 가지고 있지 않습니다. 즉, Parse.Session에서 afterSave를 사용할 수 없습니다. Parse.User에서 afterSave를 사용하는 것에 대해서는 이론 상으로는 좋은 아이디어이지만, 유일한 관심사는 사용자를 트리거에 연결하기 위해 설치 객체를 갖지 않을 것이라는 것입니다. – Wissam

+0

네, Parse.Session 트리거를 시도한 후에 작동하지 않았습니다. 나는 클라이언트 쪽에서 그것을하기로 결정했습니다, 나는 그것이 가장 간단한 방법이라고 생각합니다. –

관련 문제