У меня есть веб-страница описания курса как университетского проекта, где я сейчас работаю над страницей, на которой я показываю информацию о статусе одобрения всех курсов. Я извлекаю все курсы, хранящиеся в базе данных, в массив в php, а затем передаю этот массив в файл ветки, где я хочу перебрать массив курсов.
Однако веточка, похоже, не распознает, что такое переменная 'course' в 'courseList', поскольку информация не отображается.
Веточка
<tbody>
{% for course in courseList %}
<tr>
<th scope="row">{{ loop.index }}</th>
<td>{{ course.getCourseCode }}</td>
<td>{{ course.getCourseName(0, course.getCourseId) }}</td>
<td class="font-weight-bold">{{ course.getCourseApprovalDue }}</td>
<td>
<div class="progress">
<div class="progress-bar {% if course.getStatus == 0 %} bg-warning
{% elseif coruse.getStatus == 1 %} bg-danger {% else %} bg-success {% endif %}" role="progressbar"
style="width: 100%" aria-valuenow="10" aria-valuemin="0" aria-valuemax="10">{{ course.getStatus }}
</div>
</div>
</td>
</tr>
{% endfor %}
</tbody>
PHP
if ($session->has('loggedin')) {
$courseList = $database->getAllCourses();
echo $twig->render('courseStatus.twig', array('user' => $session->get('user'), 'loggedIn' => true, 'courseList' => $courseList));
} else {
echo $twig->render('login.twig');
}
Запросы к базе данных и функции php работает правильно. Я могу убедиться в этом, передав жестко закодированный объект курса в файл ветки. Массив coruseList также не пустой, так как файл ветки отображает 5 строк при рендеринге, что соответствует количеству курсов, хранящихся в базе данных.