02.Django後臺和資料庫的設計
當服務啟動時,Django從`` url.py`` 引導URLconf,然後執行`` admin.autodiscover()`` 語句。 這個函式遍歷INSTALLED_APPS
配置,並且尋找相關的 admin.py
檔案。
如果在指定的app目錄下找到admin.py
,它就執行其中的程式碼。
在`` books`` 應用程式目錄下的`` admin.py`` 檔案中,每次呼叫`` admin.site.register()`` 都將那個模組註冊到管理工具中。 管理工具只為那些明確註冊了的模組顯示一個編輯/修改的介面。
應用程式`` django.contrib.auth`` 包含自身的`` admin.py`` ,所以Users和Groups能在管理工具中自動顯示。 其它的django.contrib
應用程式,如django.contrib.redirects
,其它從網上下在的第三方Django應用程式一樣,都會自行新增到管理工具。
綜上所述,管理工具其實就是一個Django應用程式,包含自己的模組、模板、檢視和URLpatterns。 你要像新增自己的檢視一樣,把它新增到URLconf裡面。 你可以在Django基本程式碼中的django/contrib/admin
目錄下,檢查它的模板、檢視和URLpatterns,但你不要嘗試直接修改其中的任何程式碼,因為裡面有很多地方可以讓你自定義管理工具的工作方式。
(如果你確實想瀏覽Django管理工具的程式碼,請謹記它在讀取關於模組的後設資料過程中做了些不簡單的工作,因此最好花些時間閱讀和理解那些程式碼。)
#coding:utf-8
from django.db import models
# Create your models here
class Blog(models.Model):
title = models.CharField(max_length=20) #文章標題
author = models.CharField(max_length=15) #作者
time = models.TimeField() #時間
tag = models.CommaSeparatedIntegerField() #文章標籤
content = models.TextField() #內容
def __unicode__(self): #後臺中顯示的標題
return self.title
class Meta: #自定義資料表名字
db_table = "Blog"
from django.contrib import admin
from blog.models import Blog
# Register your models here.
admin.site.register(Blog)
SQL有指定空值的獨特方式,它把空值叫做NULL。NULL可以表示為未知的、非法的、或其它程式指定的 含義。
在SQL中, NULL
的值不同於空字串,就像Python中None
不同於空字串(""
)一樣。這意味著某個字元型欄位(如VARCHAR
)的值不可能同時包含NULL
和空字串。
CREATE TABLE
語句自動為每個欄位顯式加上NOT NULL
#coding:utf-8
from django.contrib import admin
from blog.models import Blog
# Register your models here.
class BlogAdmin(admin.ModelAdmin):
#自定義列表
list_display = ('title','time','tag','author','content')
#新增過濾段
list_filter = ('time','author')
#自定義過濾選單,排除一些不想被他人編輯的選單
fields = ('title','time','tag','author','content')
#快速查詢欄#多對多欄位使用filter_hierarchy,不能用於 ForeignKey欄位
search_fields = ('author','time','tag',)
filter_hierarchy = ('authors',)
# #用BlogAdmin來註冊Blog
admin.site.register(Blog, BlogAdmin)
相關文章
- Salesforce和SAP Netweaver裡資料庫表的後設資料設計Salesforce資料庫
- 關於後臺資料庫設計的考慮(手機平臺)資料庫
- 【資料庫設計】資料庫的設計資料庫
- ABAP資料庫表的後設資料資料庫
- 開源 Amundsen:資料發現和後設資料平臺
- IM 的資料庫設計資料庫
- DataHub:LinkedIn的後設資料搜尋和發現平臺
- MySQL 資料庫設計和注意事項MySql資料庫
- vivo資料庫與儲存平臺的建設和探索資料庫
- 4,MySQL資料庫的設計MySql資料庫
- PowerDesigner設計資料庫資料庫
- 2024.11.5(資料庫設計)資料庫
- KMC資料庫設計資料庫
- 圖資料庫 Nebula Graph 的資料模型和系統架構設計資料庫模型架構
- 如何實現一個資料庫的 UDF?圖資料庫 NebulaGraph UDF 功能背後的設計與思考資料庫
- 資料庫實驗五:資料庫程式設計資料庫程式設計
- 資料庫實驗八 資料庫程式設計資料庫程式設計
- SACC2017:資料庫架構設計與實踐的後半生資料庫架構
- MongoDB資料庫的設計規範MongoDB資料庫
- 資料庫:系統設計的核心資料庫
- 資料庫設計的基本步驟資料庫
- MySQL 資料庫設計的“奧祕”MySql資料庫
- 後臺程式設計師如何進階大資料學習?程式設計師大資料
- Smartbi:資料治理系列之後設資料管理平臺的原理
- 資料庫設計總結資料庫
- 資料庫設計基礎資料庫
- Java資料庫框架設計Java資料庫框架
- 資料庫設計之思考資料庫
- 介面平臺實用功能設計分享——資料庫校驗資料庫
- CRM, C4C和SAP Hybris的資料庫層設計資料庫
- 基於容器的金融資料庫雲平臺DBaaS設計實踐分享資料庫
- 織夢資料庫能看到後臺地址嗎?資料庫
- 使用 ER 方法的資料庫設計方法資料庫
- 後臺介面設計之表格設計
- 資料庫連線池設計和實現(Java版本)資料庫Java
- 評論模組 – 後端資料庫設計及功能實現後端資料庫
- 評論模組 - 後端資料庫設計及功能實現後端資料庫
- 資料湖和中央資料倉儲的設計
- MySQL資料庫設計規範MySql資料庫