修改settings.pyhtml
MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', # Uncomment the next line for simple clickjacking protection: 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.locale.LocaleMiddleware', ) INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', # Uncomment the next line to enable the admin: 'django.contrib.admin', # Uncomment the next line to enable admin documentation: 'django.contrib.admindocs', 'DjangoMysqlSite.products', #這個是我上章創建的app,可參考前面 )
修改完後到項目目錄執行 python manage.py syncdb 這時候會提示你輸入建立超級用戶用於登陸管理後臺。python
修改urls.pymysql
如今能夠配置admin的url配置:直接取消註釋便可。以下圖sql
這就是Django管理界面,能夠隨意操做..django
依然用前面用到的例子products app 具體看上一章 Product,Company這兩個模型。vim
在products目錄下新建admin.py,代碼以下:服務器
admin.site.register(Company,CompanyAdmin) admin.site.register(Product,ProductAdmin)
以上兩句便可註冊到管理後臺,下面是添加了一些附加功能的一些代碼,固然本身能夠自由定義。
#vim: set fileencoding=utf-8 : from django.contrib import admin from DjangoMysqlSite.products.models import Company,Product #自定義顯示列 class CompanyAdmin(admin.ModelAdmin): list_display = ('full_name','address','tel') search_fields = ('full_name',) class ProductAdmin(admin.ModelAdmin): list_display = ('product_name','price','stock','create_date')#自定義顯示列 search_fields = ('product_name','price')#搜索字段 list_filter = ('create_date',) #右邊小窗過濾器 date_hierarchy = 'create_date' #對一個日期型字段進行層次劃分 ordering = ('-create_date',)#列表排序字段 fields = ('product_name','stock','price','create_date',)#定義表單字段的順序,默認安裝模型中定義順序 admin.site.register(Company,CompanyAdmin) admin.site.register(Product,ProductAdmin)
效果以下圖:
![](http://static.javashuo.com/static/loading.gif)
當服務啓動時,Django從`` url.py`` 引導URLconf,而後執行`` admin.autodiscover()`` 語句。 這個函數遍歷INSTALLED_APPS配置,而且尋找相關的 admin.py文件。 若是在指定的app目錄下找到admin.py,它就執行其中的代碼。session
在`` products`` 應用程序目錄下的`` admin.py`` 文件中,每次調用`` admin.site.register()`` 都將那個模塊註冊到管理工具中。 管理工具只爲那些明確註冊了的模塊顯示一個編輯/修改的界面。app
應用程序`` django.contrib.auth`` 包含自身的`` admin.py`` ,因此Users和Groups能在管理工具中自動顯示。 其它的django.contrib應用程序,如django.contrib.redirects,其它從網上下在的第三方Django應用程序同樣,都會自行添加到管理工具。函數
綜上所述,管理工具其實就是一個Django應用程序,包含本身的模塊、模板、視圖和URLpatterns。 你要像添加本身的視圖同樣,把它添加到URLconf裏面。 你能夠在Django基本代碼中的django/contrib/admin 目錄下,檢查它的模板、視圖和URLpatterns,但你不要嘗試直接修改其中的任何代碼,由於裏面有不少地方可讓你自定義管理工具的工做方式。 (若是你確實想瀏覽Django管理工具的代碼,請謹記它在讀取關於模塊的元數據過程當中作了些不簡單的工做,所以最好花些時間閱讀和理解那些代碼。)
最後說明一點這個管理界面不必定適合你要作的項目應用中,僅做爲理解學習Django。固然對於簡單的一些資訊新聞類能夠直接採用這個管理後臺,更多的這方面的能夠訪問https://docs.djangoproject.com/en/dev/ref/contrib/admin/