0

GAE 애플리케이션이 있습니다. NoSQL의 이메일과 Google 드라이브의 새로 고침 토큰이 있습니다. 나는 가지고있다 크론 직업 발사 을 위해 각 PDF를 위해 이것을 다운로드하기 위해 이것을 누설한다.GAE 수집 작업 데이터 지원

아니요 각 사용자에게 PDF 데이터를 보내려합니다. (사용자 [email protected]10 PDF 문서가있는 경우, 예를 들어)

나는이 메일에 10 이메일을 보낼 수, 각 문서에 대한 이메일을 보내 질수 - 각 PDF 작업은 각 메일을 보냅니다.
BUT 사용자 데이터를 수집하고 함께 보내는 방법은 무엇입니까?

각 작업은 각 PDF에서 작동합니다. 각 사용자 데이터를 함께 수집해야합니다. 나는 모든 문서에 대해 하나의 전자 메일을 보냅니다 (예제에서는 하나의 전자 메일 은 10 개의 pdf 문서 데이터을 포함하고자합니다).

데이터 저장에 데이터를 저장하고 다음 날에 다른 데이터를 저장하려면 DB에서 데이터를 수집하고 메일을 보내야합니다. 이쪽이 좋은가요?

답변

1

예, 데이터 저장소에 데이터를 수집하고 하루에 한 번 보냅니다. 전형적인 모델 (파이썬) 될 수 있습니다

class DigestEmail(db.Model): 
    recipient = db.StringProperty() 
    pdf_id = db.StringProperty() 
    sent = db.BooleanProperty(default=False) 

을 그리고 당신이 DigestEmail 엔티티를 생성하여 작업 대기열에서 이메일을 보낼 필요로 할 때. 그런 다음, 하루 (또는 무엇이든)하면, 다음과 같이받는 사람의 지시 = False로 전송하여 DigestEmail 엔티티를, 조회 :

query = DigestEmail.gql('WHERE sent = False ORDER BY recipient') 

다음받는 사람에 의해 함께 쿼리 결과 및 그룹을 통해 반복. 전자 메일을 보내고 보낸 속성을 True로 설정하면 다시 보내지 않습니다. (또는 엔티티를 모두 삭제하십시오.)

+0

자바로 작업합니다. 자바에서 코드를 번역 할 수 있습니까? :) – grep

+0

농담, 맞죠?! 그것은 아주 간단한 코드이고, 솔루션보다는 설명하기위한 것입니다 –

+0

u :-))))) +1) :-))))))) 감사합니다. – grep