2009-09-18 6 views
0

저는 gean의 python sdk에서 django를 실행하고 있습니다.스프레드 시트를 gae로 메일 메시지에 첨부하십시오.

내 응용 프로그램은 중소 기업을위한 주문 처리 응용 프로그램입니다. 주문 완료시 고객에게 스프레드 시트 형태로 배송 노트를 이메일로 보내고 싶습니다. 이제는 첨부 파일을 보내는 데 문제가없는 문서를 읽었으며 특정 파일 형식 만 gae에 허용됩니다.

Google 데이터 API를 사용하여 스프레드 시트 문서를 만들었지 만 문제는 Google 스프레드 시트 문서를 고객에게 이메일로 보내는 방법입니다. 내 appengine은 호스팅 된 도메인에 있으므로 일반 Gmail 계정에는 액세스 할 수 없으며 많은 고객 이메일 계정은 Gmail이 아니어도 Google 스프레드 시트 첨부 파일은 호스팅 된 문서를 가리키는 xml 아톰 객체입니다. 어쨌든 외부 사용자가 액세스 할 수없는 내 계정에 있습니까?

이 스프레드 시트 개체를 복사하여 이메일에 첨부 할 수 있으므로 내 Google 문서에 대한 액세스 권한이없는 사용자가 로컬로 열 수 있습니다. 기본적으로 오프라인으로 열 수 있습니다. 내 코드는 다음과 같습니다 그들이 시도하고 그것을 열 때

new_entry = gdata.GDataEntry() 
    new_entry.title = gdata.atom.Title(text='Delivery Note from ' + company.company_name) 
    category = gd_client._MakeKindCategory(gdata.docs.service.SPREADSHEET_LABEL) 
    new_entry.category.append(category) 
    doc_entry = gd_client.Post(new_entry, '/feeds/documents/private/full') 
    .....now build the spreadsheet 
    doc_title = 'deliverynote' + '.' + doc_entry.title.type 
    .....build the email body 
    mail.send_mail(sender_address, to_address, subject, body, attachments=[(doc_title, str(doc_entry))]) 

들이 예기치 않은 오류 (구글 그것을 시도 할 때 사용하며이 열립니다 정확한 단어를) 얻을, 그것을 고객이 메일을 수신하지만이 방법을 수행 .

다른 대안은 물론 그것을 시도하고 엑셀 파일로 변환하는 것입니다. 메소드는 Google에서 제공하여 파일을 로컬 파일 시스템에 Excel 파일로 내보내지만 프로그램은 수동 사용자 개입없이 다시 업로드하는 문제에 직면합니다. 엑셀 파일 형식 외에는 합법적 인 첨부 파일 유형으로 gae가 지원하지 않습니다.

누구에게 아이디어가 있습니까?

답변

0

흥미로운 질문입니다.

GData를 사용하여 만들었으므로 GAE 앱에 사본을 가져와 첨부 할 수있는 권한이 있어야합니다. 어떤 형식이 될지, 그리고 그것을받는 사람이 어떻게 사용하는지 확실하지 않습니다.

Google 스프레드 시트를 이메일에 첨부 한 경우 어떻게 열 수 있습니까? Google은 "웹에서"실행되기 때문에? Google에 오프라인 옵션이 있다는 것을 알고 있지만 아직 시도하지 않았습니다. 로컬 컴퓨터에 Google Gears 및 기타 항목을 설치해야한다고 생각합니다.

사람들이 스프레드 시트를 공유하거나 각자 자신의 복사본을 가져 오게 하시겠습니까? 더 많은 사람들이 읽기 전용 또는 업데이트 액세스 권한을 갖도록 권한을 변경할 수 있습니까?

모든 수신자에게 Excel이 있습니까? 그들은 모두 Google App Accounts를 가지고 있습니까?

닐 월터스

관련 문제