Я новичок в django, хочу передать некоторые данные в мой шаблон, используя классический вид. для этого я использовал просмотр шаблона. но не в состоянии добиться успеха.Django Тип шаблона не работает
ввиду
class MessagesSummaryView(generic.TemplateView):
template_name = 'message_history.html'
log_dict = {}
def get_context_data(self, **kwargs):
context = super(MessagesSummaryView, self).get_context_data(**kwargs)
cur = connection.cursor()
cur.execute("SELECT logmsg.message_id, COUNT(logmsg.log_id) AS TotalUsers, logmsg.sent_on AS Sent_ON, logmsg.log_status, msg.message_subject FROM sendmessage_log_messages logmsg, sendmessage_messages msg WHERE from_name = '"+ str(request.user.email) +"' and logmsg.message_id = msg.message_id GROUP BY logmsg.message_id, logmsg.sent_on, logmsg.log_status, msg.message_subject;")
rows = cur.fetchall()
count = 0
for row in rows:
temp={}
temp['message_id'] = row[0]
temp['count'] = row[1]
temp['Sent_ON'] = str(row[2])
temp['message_subject'] = row[3]
log_dict[row[0]] = temp
context['message_history'] = self.log_dict
return context
и в шаблоне
<table id="mytable" class="table table-bordred table-style-two" style="table-layout:auto; border:black solid thin;">
<tbody>
<div id="content">
{% for contact in message_history %}
<tr>
<!-- <td style="text-align:center;">{{ contact.list_id }}</td> -->
<td style="text-align:left; font-size:small; width:10%;">You Had Send Message : {{ contact.message_subject }} to {{ contact.TotalUsers }} on {{ contact.sent_on }}. <a href="/message/?message_id={{ contact.message_id}}">Show Detials</a></td>
</tr>
{% endfor %}
</div>
</tbody>
</table>
, много всяких ошибок была решена, но данные не отображается на странице, и один, что
global name 'request' is not defined
это работает, но данные по-прежнему не отображаются на странице шаблона. –
Попробуйте добавить '' {{message_history}} '' где-нибудь в вашем шаблоне (перед элементом таблицы), чтобы убедиться, что ваша таблица фактически содержит что-то (если вы видите '' [] '', то ваша таблица пуста, и вам, вероятно, нужно будет уточните ваш запрос) – Serafeim
yeh, данные отправляются в виде вложенного словаря ... '{40: {'count': 2L, 'message_subject': u'Delivered ',' message_id ': 40,' Sent_ON ':' 2015-01-22 12: 37: 58.631670 + 00: 00 '}, 41: {' count ': 14L,' message_subject ': u'Delivered', 'message_id': 41, 'Sent_ON': '2015-01- 22 12: 37: 58.631670 + 00: 00 '}} ' –