Django筆記5 管理站點

2021-08-23 15:37:52 字數 2072 閱讀 2045

[b]1.啟用管理介面[/b]

(1)選擇需要管理的model

books下建立乙個檔案admin.py

from django.contrib import admin

from mysite.books.models import book, author, publisher

admin.site.register(book)

admin.site.register(publisher)

admin.site.register(author)

(2) 請確認」django.contrib.sessions」,」django.contrib.auth」,和 「django.contrib.contenttypes」 前面的注釋已去掉,因為管理程式需要它們。請同時去掉所有 middleware_classes 設定行中的注釋,並清除 template_context_processor 設定,以便它可以重新使用預設值。

(4)urls.py設定

from django.conf.urls.defaults import *

from django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',

(r'^admin/(.*)', admin.site.root),

)現在你可以訪問 django 給你的url ( 在進行的例子中),登入,隨便看看。

[b]2. 定製管理介面[/b]

修改admin.py

from django.contrib import admin

from mysite.books.models import book, author, publisher

class bookadmin(admin.modeladmin):

list_display = ('title', 'publisher', 'publication_date')

list_filter = ('publisher', 'publication_date')

ordering = ('-publication_date',)

search_fields = ('title',)

admin.site.register(book,bookadmin)

admin.site.register(publisher)

admin.site.register(author)

[b]3. 定製管理介面的外觀[/b]

管理站點的頭部區域在模板 admin/base_site.html 裡。預設情況下,這個模板在 django管理模板目錄 django/contrib/admin/templates 裡,你可以在django的安裝目錄找到它,例如python的 site-packages 目錄或者你安裝的其他目錄。要自定義這個 base_site 模板,把這個模板拷貝到你的模板目錄下的 admin 子目錄。例如,假定你的模板目錄是 「/home/mytemplates」,拷貝django/contrib/admin/templates/admin /base_site.html到 /home/mytemplates/admin/base_site.html 。不要忘了有 admin 子目錄。然後,編輯這個新 admin/base_site.html 檔案,替換你自己站點的名稱上去。

備註:每個django預設的管理模板都可以過載。要過載乙個模板,就象 base_site.html 一樣的去做:把它從預設目錄中拷貝到你自己的模板目錄中然後修改它。

[b]4.關於中文資料的修正[/b]

(1)插入中文資料出錯

建資料庫的時候需將字符集設定為:utf8 utf8_general_ci,不然以後諸多問題

(2)出現』ascii』 codec can』t encode characters in position 0-2錯誤

更改model的str函式

def __str__(self):

return self.name.encode('utf-8')

或(未驗證)

def __unicode__(self):

return self.name

5,Django 管理站點重寫admin模板

使用django的admin管理工具,可以快速的構建自己的管理平台,使用django原生太的模板更能使我們節省很多任務作量。但有時候,模板上展現的內容並不能滿足我們的業務需求,我們需要些許調整就可以達到我們想要的效果,此時我們可以通過重寫admin模板來實現。我們繼續使用前面兩篇文件中所使用的專案,...

django框架 Admin管理站點搭建

在django框架中,admin基本上算是已經寫好了的,拿過來進行簡單的處理即可以使用的,相對於flask來說已經是相當的便捷了。在使用中,步驟如下 1.管理介面本地化 即將英文標題等的變成中文,在django框架的配置檔案settings中,更改language code zh hans 更改時區...

第六章 Django管理站點

第六章 django管理站點 1 自動管理介面 它讀取你模式中的元資料,然後提供給你乙個強大而且可以使用的介面,管理者可以用它立即工作 django.contrib包,自帶很多優秀的附加元件 2 啟用管理頁面 步驟 1 在你的模式中加入管理元資料 需要標註哪些模式應該有有管理介面,在模式中新增adm...