gun*_*gun 5 scala playframework slick
我想上传一个文件,然后将该文件保存到数据库中。我正在使用播放框架和光滑。我找不到任何示例如何编写tablequery以及如何在我的数据库中保存文件(Postgres)。
Play文档描述了如何上传文件的方式:
def upload = Action(parse.multipartFormData) { request =>
request.body.file("picture").map { picture =>
import java.io.File
val filename = picture.filename
val contentType = picture.contentType
val file = picture.ref.file
//Here I have to save file, right?
Ok("File uploaded")
}.getOrElse {
Redirect(routes.Application.index).flashing(
"error" -> "Missing file")
}
}
Run Code Online (Sandbox Code Playgroud)
有人可以给我一个例子或提示去哪里看看吗?我不确定模型的数据类型是什么。
可以这么说,有一个PictureDao:
trait PictureDao with PictureComponent with HasDatabaseConfig[JdbcProfile] {
import driver.api._
}
trait PictureComponent {
protected val dbConfig = DatabaseConfigProvider.get[JdbcProfile]("postgres")(Play.current)
protected val driver: JdbcProfile
import driver.api._
import com.github.tototoshi.slick.JdbcJodaSupport._
class PictureTable(tag: Tag) extends Table[Picture](tag, "picture") {
def userId = column[Option[UUID]]("userid", O.PrimaryKey)
def photo = column[Blob]("photo")
def date = column[DateTime]("date")
def * = (userId, photo, date) <> ((Picture.apply _).tupled, Picture.unapply)
}
// table query definitions
val pictureTable = TableQuery[PictureTable]
}
Run Code Online (Sandbox Code Playgroud)
我的图片课程上的“照片”会是哪种类型?
看起来很简单。我不知道为什么这么复杂...
| 归档时间: |
|
| 查看次数: |
657 次 |
| 最近记录: |