1. 程式人生 > >Django自帶後臺admin的使用配置

Django自帶後臺admin的使用配置

Django自帶後臺使用配置
參考官網地址:https://docs.djangoproject.com/en/1.11/ref/contrib/admin/ ,本文章值是介紹簡單配置,如果需要詳細內容可以查閱官方文件

用過Django框架的童鞋肯定都知道,在建立完Django專案後,每個app下,都會有一個urls.py檔案,裡邊會有如下幾行:

from  django.contrib  import  admin   urlpatterns  =  [     
url(r '^admin/' , admin.site.urls), ]

上邊看到匯入的admin模組,就是本節所要說的主要內容

主要功能

  功能1:提供資料庫管理功能

    基於admin模組,可以實現類似資料庫客戶端的功能,對資料進行增刪改查

  功能2:二次開發

    基於該模組的資料管理功能,可以二次定製一些實用的功能。

  自動管理介面是Django最強大部分之一。

  它從你的模型中 讀取元資料,以提供一個快速,以模型為中心的介面,讓受信任的使用者可以管理您的網站上的內容。

  管理員建議的使用權限於組織的內部管理工具

  它並不打算構建你的整個前端。

1.建立一個管理員賬戶:專案建立好後臺輸入 127.0.0.1:8000/admin/ 會出現登入介面

在manage.py同級目錄,
命令列輸入 python manage.py createsuperuser
需要新增使用者名稱郵箱和密碼

model模型 model.py, 生成遷移檔案, 進行資料遷移.python3  manage.py makemigrations && python3 manage.py migrate生成表結構.

from django.db import models

# Create your models here.
class Users(models.Model):
# sid = models.AutoField(primary_key=True)
name = models.CharField(max_length=50,null=True)
age = models.IntegerField(null=True)
email = models.CharField(max_length=30)
password = models.CharField(max_length=32,null=True)
addtime = models.DateTimeField(auto_now=True,null=True)

# class Meta:
# db_table = "myhome_users"

def __str__(self):
return self.name


2.進入應用的admin.py檔案,新增模型

from django.contrib import admin
from . import models
# Register your models here.
admin.site.register(models.Users)


3.執行會發現所有使用者都是 類名 object
**進入model.py,給模型新增 __str__方法**

def __str__(self):
return self.name(欄位名)


4.後臺其他設定,繼續修改admin.py檔案

最終修改成下面
from django.contrib import admin
from . import models
# Register your models here.
class UsersAdmin(admin.ModelAdmin):
# 要展示的欄位
list_display = ('id','name','age','email','password','addtime')

# 每一頁顯示多少條資料,預設是100條
list_per_page = 5

# 設定預設排序欄位,負號表示降序排序
ordering = ('id','age')

# 設定可編輯的欄位
list_editable = ['name','age']

# 過濾器
list_filter = ('name','age')

# 搜尋欄位
search_fields = ('name','age')
# 時間分層篩選
date_hierarchy = 'addtime'

admin.site.register(models.Users,UsersAdmin)
最後注意如果資料庫有時間相關資訊,或者最好直接把settings.py配置的時間設定成本地時間,修改內容如下

LANGUAGE_CODE = 'zh-Hans' # 後臺預設是英文 修改成中文

TIME_ZONE = 'Asia/Shanghai' # 設定時區

USE_I18N = True

USE_L10N = True

USE_TZ = False # 設定本地時間必須改成False不然會報錯...

摘詞 : Everthing isn't getting along well,your efforts paid off!