2014-11-22 2 views
0

나는 beego에서 웹 응용 프로그램을 만들고 있습니다. 나는 둘 다 가서 beego. 나는 mysql 데이터베이스에 pdf 파일을 저장하고 싶다. PHP에서는 쉽게 할 수 있지만 beego에서는 문제가 있습니다.Beego : MySQL 데이터베이스에 파일을 저장하는 업로드 양식을 만드는 방법은 무엇입니까?

  1. Mysql 유형 blob은 pdf 파일을 저장하는 데 사용됩니다. 하지만 go BLOB는 유효한 유형이 아닙니다. 그래서 나는 무엇에서 사용해야합니까? 나는 mysql 테이블에 대한 모델을 만드는 동안이 문제에 직면했다.

  2. HTML 양식을 구문 분석하여 PDF 파일을 가져 오는 방법은 무엇입니까? GetString 및 GetInt 함수에 대해서만 알고 있지만 Beego 컨트롤러에서 html 형식의 파일 형식을 얻는 방법은 무엇입니까?

답변

0

the Beego Documentation에 따르면, 당신은 GetFile을 사용할 수 있습니다 : 파일이 업로드받을 수 있도록

file, header, err := ctrlr.GetFile("input_name_in_markup") 

당신 당신의 HTML 양식에 enctype="multipart/form-data" 특성을 적용해야합니다.

또한 BLOB 유형은 []byte 슬라이스로 표시 될 수 있습니다. 일부 패키지는 유형을 정의하며 []byte에서 별칭을 지정합니다 (예 : type Blob []byte). 패키지가 있는지 확인하려면 작업중인 패키지를 확인해야합니다. 그렇지 않으면 []byte을 사용하십시오.

+0

답변 해 주셔서 감사합니다. 예, 이것이 도움이됩니다. 하지만 데이터베이스에 저장하기 위해 파일 내용을 가져 오는 데 막혔습니다. 파일은 multipart.File 유형이지만, [] 바이트가 필요합니다. 이 파일을 파일 시스템에 저장하고 싶지 않습니다. 데이터를 데이터베이스에 저장하기 만하면됩니다. 이것에 대한 도움이 필요하십니까? –

+0

'multipart.File'은'io.Reader' 인터페이스를 구현합니다. 즉, 일반 파일에서와 같이 바이트 버퍼로 읽습니다. –

+0

당신은 multipart.File을 통해 파일 내용을 읽을 수있는 자습서 링크를 제공해주십시오. 이것을 mysql과 통합 할 수 없다. 파일 내용을 읽을 수는 있지만 데이터베이스에 쓸 수는 없습니다. –

관련 문제