Как вы отображаете информацию из таблицы базы данных в формате таблицы на веб-странице? Есть ли простой способ сделать это в django или требуется более сложный подход. Более конкретно, как вы в значительной степени переносите по столбцам и строкам в таблице базы данных визуальную таблицу, которую можно увидеть по URL-адресу?
Отображение таблицы в Django из базы данных
Ответ 1
Самый простой способ - использовать для тега шаблона цикла.
Учитывая представление:
def MyView(request):
...
query_results = YourModel.objects.all()
...
#return a response to your template and add query_results to the context
Вы можете добавить фрагмент, подобный этому шаблону...
<table>
<tr>
<th>Field 1</th>
...
<th>Field N</th>
</tr>
{% for item in query_results %}
<tr>
<td>{{ item.field1 }}</td>
...
<td>{{ item.fieldN }}</td>
</tr>
{% endfor %}
</table>
Все это описано в Часть 3 учебника Django. И здесь Часть 1, если вам нужно начать там.
Ответ 2
$ pip install django-tables2
settings.py
INSTALLED_APPS , 'django_tables2'
TEMPLATES.OPTIONS.context-processors , 'django.template.context_processors.request'
models.py
class hotel(models.Model):
name = models.CharField(max_length=20)
views.py
from django.shortcuts import render
def people(request):
istekler = hotel.objects.all()
return render(request, 'list.html', locals())
list.html
{# yonetim/templates/list.html #}
{% load render_table from django_tables2 %}
{% load static %}
<!doctype html>
<html>
<head>
<link rel="stylesheet" href="{% static
'ticket/static/css/screen.css' %}" />
</head>
<body>
{% render_table istekler %}
</body>
</html>