У меня есть следующая ситуация: мне нужно отобразить шаблон в соответствии с предоставленным параметром URL. Пример:Шаблон рендеринга в соответствии с параметром URL
http://localhost:9000/abc -> renders abc.scala.html
http://localhost:9000/def -> renders def.scala.html
Самым простым решением было бы определить эти требования в маршрутов файл:
GET /abc controllers.Application.abc()
GET /def controllers.Application.def()
...
, а затем в контроллере Применение:
public static Result abc() {
return ok(abc.render());
}
Но я ищу для более «общего» решения. Примерно:
GET /:myparameter controllers.Application.test(myparameter: String)
К сожалению, я не знаю, как «вызвать» соответствующий вид в моем контроллере. Я думал о какой-то карте, где каждый параметр сопоставляется с представлением, но без успеха. Я пробовал так вот так:
Map<String, play.api.templates.Html>
Конечно, это только дает мне содержимое HTML, а не «Шаблон», который я хочу отобразить.
Информация: Я использую Play 2 с Java
С наилучшими пожеланиями
Спасибо, я, вероятно, воспользуюсь этой опцией. Но есть ли способ сохранить только «ссылку» на шаблон на карте вместо «скомпилированного html»? Что-то вроде: 'Карта map = new HashMap <>()' 'map.put (" abc ", abc)' –
user2229298