首頁  >  文章  >  後端開發  >  如何使用Python Django的通用視圖和錯誤視圖?

如何使用Python Django的通用視圖和錯誤視圖?

WBOY
WBOY轉載
2023-05-08 21:49:071133瀏覽

定義通用視圖

修改book/models.py 程式碼中的AuthorInfo 類,如果一致則不必修改

class AuthorInfo(models.Model):
    id = models.CharField(max_length=30, verbose_name="身份证号", primary_key=True)
    name = models.CharField(max_length=20, verbose_name="姓名")
    telephone = models.CharField(max_length=20, verbose_name="联系方式")
    age = models.IntegerField(verbose_name="年龄", default=30)
    sex = models.CharField(max_length=2, verbose_name="性别", default="男")

    def __str__(self):
        return self.name

book/views.py 檔案下新建AuthorListView 的函數

from book.models import AuthorInfo
from django.views.generic.list import ListView

class AuthorListView(ListView):
    model = AuthorInfo
    template_name = "list.html"
    context_object_name = "my_author"

如何使用Python Django的通用視圖和錯誤視圖?

book/urls.pyurlpatterns 清單中新一個路由

path('author/', views.AuthorListView.as_view())

如何使用Python Django的通用視圖和錯誤視圖?

#新templates/list.html 檔案

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<ul>
    {% for item in my_author %}
    <li>{{ item.name }}</li>
    {% endfor %}
</ul>
</body>
</html>

訪問http://127.0.0.1:8000/book/authorlist/

如果無法存取頁面,請檢查chapter1/urls.py 檔案內的urlpatterns 清單中是否含有book 的路由

如何使用Python Django的通用視圖和錯誤視圖?

如果為無報錯且為空白頁面,請注意查看資料庫內是否含有數據,下面為新增範例資料的程式碼

INSERT INTO book_authorinfo (id, name, telephone, age, sex) VALUES
(&#39;a001&#39;, &#39;Alice&#39;, &#39;13812345678&#39;, 25, &#39;F&#39;),
(&#39;a002&#39;, &#39;Bob&#39;, &#39;13987654321&#39;, 30, &#39;M&#39;),
(&#39;a003&#39;, &#39;Charlie&#39;, &#39;13611112222&#39;, 40, &#39;M&#39;),
(&#39;a004&#39;, &#39;David&#39;, &#39;13533334444&#39;, 20, &#39;M&#39;),
(&#39;a005&#39;, &#39;Eve&#39;, &#39;13755556666&#39;, 35, &#39;F&#39;);

可在此執行

如何使用Python Django的通用視圖和錯誤視圖?

如無問題,將會看到作者資訊

如何使用Python Django的通用視圖和錯誤視圖?

定義錯誤視圖範本

修改chapter1/settings.py 檔案

DEBUG = False

ALLOWED_HOSTS = [&#39;*&#39;]

如何使用Python Django的通用視圖和錯誤視圖?

新增templates/404 .html 檔案

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>此页面未找到</title>
</head>
<body>
    <h3>自定义的404页面</h3>
    <p>您访问的页面不存在</p>
</body>
</html>

此時進入未定義的路由網址時,便會顯示上面所寫的網頁

如何使用Python Django的通用視圖和錯誤視圖?

以上是如何使用Python Django的通用視圖和錯誤視圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除