Como servir arquivos enviados no Play! 2 usando o Scala?
Eu estou tentando permitir que os usuários façam upload de fotos para o servidor e, em seguida, visualizá-las. O upload acontece conforme descritoneste guia. Aqui está o código:
def upload = Action(parse.multipartFormData) { request =>
request.body.file("picture").map { picture =>
import java.io.File
val filename = picture.filename
val contentType = picture.contentType
picture.ref.moveTo(new File("/tmp/picture"))
Ok("File uploaded")
}.getOrElse {
Redirect(routes.Application.index).flashing(
"error" -> "Missing file"
)
}
}
Não está claro para mim como exibir as imagens enviadas para os usuários que desejam vê-las. No momento, estou hospedando o servidor em minha própria máquina, para que o snippet de código do guia grave os arquivos em minha unidade D :, que não está (e não deveria estar) disponível na Internet. Tanto quanto eu posso ver, existem duas opções:
Armazene as fotos na pasta / public no meu projeto (aquele que é dedicado aos ativos). Veja aqui:http://www.playframework.org/documentation/2.0/Assets
Escreva meu próprio controlador que serve imagens de forma personalizada locais da minha unidade.
Para 1, não tenho certeza se esse é o objetivo dos ativos. Para 2, não tenho ideia de como escrever um controlador desse tipo.