Хотя в режиме разработки можно загружать файлы с помощью метода ref.move в () в общей папке или любой папке приложения в инфраструктуре воспроизведения и отображать этот файл методом path () AssetsFinder.Но в режиме prod загрузка файла в общую папку или папку приложения не допускается.В этом случае, что я могу сделать, чтобы получить доступ к файлам внешней папки приложения, и какой будет метод рендеринга для отображения файла (изображений) в шаблоне?Ищете подробное решение ....
package controllers
import javax.inject.{Inject, Singleton}
import play.api.mvc.{AbstractController, Action, AnyContent, ControllerComponents}
@Singleton
class ImageServerController @Inject()(cc: ControllerComponents)
extends AbstractController(cc) {
def serveImages(imageName:String): Action[AnyContent] = Assets.versioned("/tmp/images",imageName)
}
файл конфигурации
GET /test controllers.TestController.test
GET /dynamicassets/*file controllers.ImageServerController.serveImages(file)
доступ к просмотрам
package controllers
import javax.inject.{Inject, Singleton}
import play.api.mvc.{AbstractController, Action, AnyContent, ControllerComponents}
@Singleton
class TestController @Inject()(cc: ControllerComponents)(implicit assetsFinder: AssetsFinder)
extends AbstractController(cc) {
def test:Action[AnyContent]=Action{
Ok(views.html.testview("hotelapp.jpeg"))
}
}
здесь просмотр
@(fileName:String)
<img src="@routes.ImageServerController.serveImages(fileName)">