У меня есть шаблон, где я перебираю коллекцию упражнений.Я отображаю каждое упражнение с его названием, описанием и кнопкой, чтобы открыть его.В настоящее время я пытаюсь добавить кнопку загрузки для нескольких файлов.Каждое упражнение имеет коллекцию CorrigeFile (OneToMany), и я пытаюсь отправить свою коллекцию CorrigeFile в JS, чтобы затем я мог зациклить их все для их загрузки (я не хочу их архивировать).Это то, что я пробовал до сих пор.
{% for exo in exos %}
{# display the exercise name, description and link to open it #}
<p class="download-btn" data-files='{{ exo.corrigeFiles }}' onclick="downloadCorr(this.dataset.files)">
<i class="fas fa-download"></i>
Download all files
</p>
{% endfor %}
И JS:
function downloadCorr(files) {
for (let i = 0 ; i < files.length ; i++) {
//download it
}
}
Но это, очевидно, не работает, потому что я думаю, что Twig не может обрабатывать необработанные коллекции, такие как мой {{ exo.corrigeFiles }}
и я не смог бы пройти через них в JS в любом случае.Может быть, я мог бы предоставить дополнительные данные с моего контроллера?Есть идеи, как это сделать?