mysql - beego:如何创建一个上传表单来存储文件到MySQL数据库?

标签 mysql go blob beego

我正在用 beego 制作一个网络应用程序。我是 go 和 beego 的新手。我想在 mysql 数据库中保存一个 pdf 文件。在 php 中,我们可以轻松做到这一点,但在 beego 中,我遇到了问题。

  1. Mysql类型的blob用于存储pdf文件。但是在 go 中,blob 不是有效类型。那么我应该在go中使用什么?我在为 mysql 表建模时遇到了这个问题。

  2. 如何解析html格式得到pdf文件?我只知道 GetString 和 GetInt 函数,但如何在 beego Controller 中从 html 表单获取文件类型?

最佳答案

根据 the Beego Documentation , 你可以使用 GetFile:

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

必须enctype="multipart/form-data" 属性应用到您的 HTML 表单,以便上传文件。

此外,BLOB 类型可以表示为 []byte slice 。一些包定义了 Blob 类型,它是 []byte 的别名 - 例如:type Blob []byte。您必须检查您正在使用的包以确认它有一个。否则,使用 []byte

关于mysql - beego:如何创建一个上传表单来存储文件到MySQL数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27078560/

相关文章:

php - 将 php 字符串与列进行比较..什么不匹配?

mysql - 根据列值应用 HAVING 子句条件

multithreading - 为什么我的 goroutines 在完成时互相等待而不是完成?

c++ - EXEC SQL LOB WRITE APPEND 与轮询(先写、下写、最后写)

php - 在Android中通过文件(使用FileInputStream)将图像发送到PHP并通过Blob保存mysql

mysql - 如果只有一个结果行,则选择自连接

mysql - 为什么连接表时 ORDER BY 结果会改变?

go - 使用 big.Rat 和 Go 来获取 Abs() 值

go - Golang stdin 循环上的 CPU 使用率过高

iPhone 无法从 MySQL 下载图像 (BLOB)