#python #mysql #python-3.x #flask #fullcalendar
Вопрос:
Я использую .py для получения значения из sql:
cur = mysql.connection.cursor()
cur.execute(
'SELECT sname FROM `sessioncreate` WHERE sessioncreate.sdate = %s AND `ownerId` = %s',
(today_date, str(check_id)))
user = cur.fetchall()
for row in user:
a = (" | ".join(row))
events = [
{
'sess_name': a,
'date': today_date
}
]
if check_isadmin == 1:
return render_template('dashboard.html', events=events)
моя .html страница:
<script>
document.addEventListener('DOMContentLoaded', function() {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
events : [
{% for event in events %}
{
title : '{{event.sess_name}}',
start : '{{event.date}}',
},
{% endfor %}
]
});
calendar.render();
});
</script>
<div id='calendar'></div>
результат моего запроса:
Проблема в том, что на html-странице отображается только второй результат запроса «aaab», я хочу показать оба.
Как я могу этого достичь?
Комментарии:
1.
events
Насколько я вижу, вы назначаете только один раз, вместо того, чтобы создавать массив и добавлять к нему внутриfor
цикла. Поэтому он будет использовать значения только в том виде, в каком они были установлены после выполнения цикла в последний раз. Я не эксперт по python, но я уверен, что вы можете погуглить, как создать список или массив с помощью python и добавить в него2. @ADyson Спасибо за ответ.
3. Без проблем. Ты понял, что я имею в виду?
4. @ADysin Да, я понимаю, что вы имеете в виду, спасибо, я меняю код и хорошо работаю.
5. Затем вы должны написать окончательное решение в качестве ответа ниже (это нормально, чтобы ответить на ваши собственные вопросы!), Тогда другие с аналогичными проблемами могут найти его и проголосовать за него, если это им полезно 🙂