#spring-boot #kotlin #mustache
#весенняя загрузка #kotlin #усы
Вопрос:
У меня есть такая модель, что у меня есть несколько ее экземпляров в списке. Я хочу передать это в свой пользовательский интерфейс и попросить пользовательский интерфейс выяснить, как это нарисовать.
data class InfoModel(val icon: String, val title: String, val text: String {
}
Контроллер.
@GetMapping("/index")
fun start(model: Model): String {
val list = getList()
model ["list"] = list
return "index"
}
Теперь в пользовательском интерфейсе я хотел бы, чтобы это было продублировано, но я не знаю как.
<div class="row">
<div class="col-md-6 col-lg-3 d-flex align-self-stretch ftco-animate">
<div class="media block-6 services d-block text-center">
<div class="d-flex justify-content-center"><div class="icon color-1 d-flex justify-content-center mb-3"><span class="align-self-center icon-layers"></span></div></div>
<div class="media-body p-2">
<h3 class="heading">Title</h3>
<p>Text here.</p>
</div>
</div>
</div>
</div>
Что я пробовал, и это ничего не отображает.
{{#list}}
<div class="col-md-6 col-lg-3 d-flex align-self-stretch ftco-animate">
<div class="media block-6 services d-block text-center">
<div class="d-flex justify-content-center">
<div class="icon color-1 d-flex justify-content-center mb-3"><span
class="align-self-center icon-{{icon}}"></span></div>
</div>
<div class="media-body p-2">
<h3 class="heading">{{title}}</h3>
<p>{{text}}</p>
</div>
</div>
</div>
{{/list}}
Комментарии:
1. scalate.github.io/scalate/documentation/…
2. @JBNizet это отличная ссылка. Не могли бы вы опубликовать это в качестве ответа? Я все еще потерян.
3. Попробуйте что-нибудь. Вы решили использовать Mustache в качестве движка шаблонов. Итак, вам нужно изучить его синтаксис, провести эксперименты. У вас есть непустой список объектов. Вам нужно выполнить итерацию по этому списку и повторить один и тот же раздел для каждого элемента. Точно так же, как в примере, на который я ссылался. Поэтому попробуйте использовать тот же синтаксис и адаптировать его к вашему реальному списку и объектам.
4. ОК. Итак, вы пытаетесь отобразить список с именем «list». И для каждого элемента списка вы пытаетесь отобразить другой список под названием «столбцы». Но внутри InfoModel нет списка именованных столбцов. Все, что у вас есть, это 3 строки. Отбрасывайте
{{#columns}}
и{{/columns}}
.5. Спасибо @JBNizet! Это очень помогло! Итак, теперь содержимое отображается в стеке. Таким образом, каждый элемент находится друг над другом, когда они должны быть рядом с каждым выходом.
Ответ №1:
Большое спасибо JBNizet за помощь в этом. (Вы должны опубликовать ответ, вы проделали всю тяжелую работу).
{{#list}}
<div class="col-md-6 col-lg-3 d-flex align-self-stretch ftco-animate">
<div class="media block-6 services d-block text-center">
<div class="d-flex justify-content-center">
<div class="icon color-1 d-flex justify-content-center mb-3"><span
class="align-self-center icon-{{icon}}"></span></div>
</div>
<div class="media-body p-2">
<h3 class="heading">{{title}}</h3>
<p>{{text}}</p>
</div>
</div>
</div>
{{/list}}
Ссылка:
https://scalate.github.io/scalate/documentation/mustache.html#Non_Empty_Lists