Django – 直接將模型資料顯示到帶有排序和分頁功能的表格中
在這篇文章中,我們將學習如何在 Django 中建立一個表格來渲染模型資料。我們不會使用 HTML 的<table>標籤。我們將使用一個簡單的 Django 表格庫,它提供直接在表格中顯示 Django 模型資料並具有分頁功能。
示例
首先,建立一個專案和一個應用程式,並設定 URL。
安裝django_tables2包:
pip install django_tables2
在settings.py中:
INSTALLED_APPS+=["django_tables2"]
在models.py中,建立一個簡單的模型進行測試:
from django.db import models # Create your models here. class Data(models.Model): Name=models.CharField(max_length=100) salary = models.CharField(max_length=20)
在urls.py中,新增一個 URL 並渲染表格檢視:
from django.urls import path
from . import views
urlpatterns = [
path('table',views.TableView.as_view(),name='table')
]現在在views.py中,新增以下幾行:
from .models import Data # Create your views here. import django_tables2 as tables # this class will create the table just like how we create forms class SimpleTable(tables.Table): class Meta: model = Data # this will render table class TableView(tables.SingleTableView): table_class = SimpleTable queryset = Data.objects.all() template_name = "table_example.html"
在這裡,我們建立了一個模型資料的表格,然後是一個檢視,我們在其中定義了一個表格和一個查詢。我們可以在此處使用過濾器查詢和一個模板來顯示錶格。
建立templates資料夾,並在其中新增table_example.html檔案,內容如下:
{% include 'material/includes/material_css.html' %}
{% include 'material/includes/material_js.html' %}
<!DOCTYPE html>
<html>
<head>
<title>TUT</title>
</head>
<body>
# these two will render the table
{% load django_tables2 %}
{% render_table table %}
</body>
</html>在這裡,我們載入了一些預設樣式和django_tables2庫,然後渲染我們在檢視中建立的表格。
現在,讓我們檢查輸出。
輸出

廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP