Django網站建設-xadmin進階開發
阿新 • • 發佈:2019-01-10
settings中的DEBUG值會影響到xadmin的使用
xadmin登出註冊方法
#xadmin登出註冊
from django.contrib.auth.models import User
xadmin.site.unregister(User)
許可權使用
1.每個單元有四個許可權:增刪改查,許可權功能放在了資料庫的auth_group_permission或auth_permission
2.每個沒有有使用者都能登陸後臺管理系統的,在資料庫的人員列表中利用is_superuser和is_staff來控制後臺管理系統的登陸許可權
3.如果僅僅是staff而不是superuser,若沒有配置許可權,則會出現“你無權修改任何東西”的提示
4.刪除資訊的話,會連指向該資訊的外來鍵也一併刪除
5.組的概念
xadmin圖示更換
1.xadmin中使用了第三方css庫(font awesome),利用model_icon控制顯示圖示,具體圖示可以在該開源庫尋找
2.如果樣式檔案版本老舊了,可以進行替換,路徑在(ExtraApp\xadmin-master\xadmin\static\xadmin\vendor\font-awesome)中
3.在adminx中增加 model_icon = ‘fa fa-user-circle-o’ 欄位,後面欄位用於修改樣式
xadmin排序
在adminx中增加欄位ordering,規定預設排序方法
ordering = ['-code'] #排序
xadmin只讀
在adminx中增加欄位readonly_fields
readonly_fields = ['code','email'] #只讀
xadmin隱藏
在adminx中增加欄位exclude
exclude = ['send_time'] #隱藏狀態
xadmin一欄多model顯示,但是必須有外來鍵關係,新建類繫結有外來鍵關係的Lesson,然後在相應的管理介面利用inlines進行顯示(只能做一層巢狀)
class LessonInlines(object): model = Lesson extra = 0 class CourseAdmin(object): list_display = ['CourseName','degree','CourseType','Students','FavouriteNumber','ClikeNumber','AddTime'] search_fields = ['CourseName','degree','CourseType','Students','FavouriteNumber','ClikeNumber'] list_filter = ['CourseName','degree','CourseType','Students','FavouriteNumber','ClikeNumber','AddTime'] inlines = [LessonInlines] #利用 admin.site.register 進行註冊 xadmin.site.register(Course,CourseAdmin)
xadmin在列表頁直接編輯修改
list_editable = ['LessonName']
在xadmin中新增html程式碼
在model中增加方法,方法內增加htm程式碼,此方法也應該可以同樣向其他地方增加html程式碼
增加之後的效果
xadmin定時重新整理效果
refresh_times = [3,5] #列表內的重新整理時間的選擇
![這裡寫圖片描述](https://img-blog.csdn.net/20180221203849128?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2VpeGluXzM1NzA1Mzkw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)