2011-06-15 3 views
0

파이썬에서 웹 애플리케이션을 개발 중입니다. 그러나 클라이언트는 현재 페이지를 내보내는 도구가 필요합니다. 그래서 xlwt (파이썬 모듈)를 사용하여 테이블을 변환하는 모든 페이지 (보기)에 여분의 코드를 작성해야했습니다.모든 브라우저 지원이 응답합니까?

하지만 더 나은 해결책이 있습니다. 그것은 현재 페이지의 내용 html을 서버에 보내고 서버는이 html 테이블을 Excel 형식으로 응답합니다. 마찬가지로 :

response['Content-Type'] = 'application/vnd.ms-excel; charset=utf-8' 
Response.ContentType = "application/vnd.ms-excel" 

이것은 꽤 잘됩니다. 그러나 모든 브라우저에서이 Excel이 지원하는 기능을 지원하는지 궁금합니다!?!?!

그것은 나에게 큰 문제 :(

것 또는 단지 MS Excel 또는 오픈 오피스는 클라이언트 컴퓨터에 설치되어있는 경우 브라우저를 지원합니까?

다른 "글로벌"솔루션을하지 않는 경우 또는 아이디어?

+0

그래서 ... HTML을 보내고 있지만 Excel 파일이라고합니다. –

+2

큰 문제가있는 것처럼 보입니다! –

+0

예 HTML 표 – jargalan

답변

1

실제 Excel 파일로 올바르게 변환하는 것이 가장 좋은 방법입니다. 당신은 파일 이름을

  • 적절한 MIME 타입
  • Excel 또는 XLS 파일을 처리하기 위해 등록 된 다른 프로그램 함께 보내기 .XLS 확장을 제공

    • 경우 말했다

      는 사용자에 설치되어 컴퓨터

    "가짜 HTML로 Excel"메서드는 정상적으로 작동합니다. 필자는 OpenOffice에서 XML로 숨겨진 HTML 파일을 열어 보려 본 적이 한번도 없었습니다. 확실히 해보고 그 파일로 수행되는 작업을 확인해야합니다.

  • +0

    예 xls 파일 확장자를 지정 했으므로 MIME이 올바르게 전송됩니다. 그래서 문제는 엑셀이나 관련 앱이 사용자의 앱에 설치되어야한다는 것입니까? 아 .. 서버 perhapse에서 변환해야합니다. jargalan

    +0

    btw OpenOffice를 사용하여 우분투에서 작업하고 Chrome v12 및 FF v3.6에서 테스트했습니다. 그것은 내가 예상했던대로 작동합니다. 그러나 나는 사용자가 그것을 다운로드 할 것이라고 생각한다. – jargalan

    +1

    @Zomboid 예. 그러나 실제 * Excel 파일을 처리 할 수있는 다른 응용 프로그램은 마스크 된 HTML 파일을 처리 할 수 ​​없습니다. 나는 그것에 의지하지 않을 것이다. –

    2

    콘텐츠 유형을 다음과 같이 설정하면 문서에 특정 유형이 있음을 클라이언트에 알리는 것입니다. 특정 의미에서 브라우저에 대한 거짓말은 Excel 스프레드 시트를 보낼 때 실제로 HTML 문서를 보내고 있습니다.이 효과는 r은 Excel 스프레드 시트 인 것처럼 열어보고 Excel에서 HTML을 가져 오는 방법을 알고 있으므로 발견 한 것처럼 작동합니다.

    클라이언트에 Excel이 없거나 Excel 문서를 열도록 구성된 다른 소프트웨어가 있으면 브라우저에서 해당 문서를 저장하도록 제안 할 수 있습니다. 그것은 어쨌든 스프레드 시트로 마술처럼 표시되지 않습니다. 그 밖에 네가 기대할만한 것이 있는지 모르겠다.

    관련 문제