Я пытаюсь разрешить пользователям загружать фотографии на сервер, а затем просматривать их. Загрузка происходит так, как описано в этом руководстве. Вот код:
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"
)
}
}
Мне непонятно, как вернуть загруженные изображения пользователям, которые хотят их увидеть. Прямо сейчас я размещаю сервер на своей машине, поэтому фрагмент кода из руководства записывает файлы на мой диск D:, который недоступен (и не должен быть) доступен из Интернета. Насколько я вижу есть 2 варианта:
Храните фотографии в папке /public в моем проекте (тот, который посвящен ресурсам). См. здесь: http://www.playframework.org/documentation/2.0/Assets.
Напишите свой собственный контроллер, который обслуживает изображения из пользовательских мест с моего диска.
Для 1 я не уверен, что это цель активов. Для 2 я понятия не имею, как написать такой контроллер.