,官方文檔:http://xadmin.readthedocs.io/en/docs-chinese/views_api.htmlhtml
中文文檔:https://www.kancloud.cn/net_you/django_xadmin/371786ajax
Django的xadmin是和admin相相似的管理後臺,裏面的不少方法都是同樣的,只不過導入的類不同,我的感受xadmin的功能更增強大(主要是適合我如今寫的東西)django
下邊就來一些使用的小示例:json
import xadmin from xadmin import views from api import models from django.shortcuts import HttpResponse from xadmin.plugins.actions import BaseActionView class MyAction(BaseActionView): # action類 action_name = 'My_action' description = 'This is my action button' model_perm = 'change' def do_action(self, queryset): for obj in queryset: return HttpResponse(obj) class BaseSetting(object): # 全局配置 enable_thems = True use_bootswatch = True class GlobalSettings(object): # 全局配置 site_title = '財務對帳系統' site_footer = 'seven_nighter@163.com' menu_style = 'accordion' class ChannelAdminn(object): model_icon = 'fa fa-bug' # 自定義左側菜單圖標 actions = [MyAction, ] # Action按鈕 list_filter = ['id', 'memo', 'name'] # 過濾 search_fields = ['id', 'memo', 'name'] # 搜索 data_charts = { # 圖表 'memo': { 'title': 'channel charset', 'x-field': 'memo', 'y-field': 'name' }, 'name': { 'title': 'channel charset', # 圖表的名稱 'x-field': 'memo', # x軸字段,一般是日期或者時間 'y-field': 'name', # y軸字段,顯示數據 'order': 'name' # 根據name字段進行排序 } } show_bookmards = False list_bookmarks = [{ # 自定義搜索書籤 'title': 'my_book_marks', 'query': {'name': True}, 'order': ('name'), 'cols': ('memo', 'name') }] list_export = ('xls', 'json',) # 數據導出格式,默認支持四種格式 refresh_times = (3, 5) # 3秒或者5秒刷新一次數據 show_detail_fields = ['memo', 'name'] # 顯示字段的詳情 show_all_rel_details = True # 設置爲True,顯示全部字段的詳情 list_editable = ['memo', 'name'] # ajax修改字段屬性值 class CheckIdfaAdmin(object): model_icon = 'fa fa-check' actions = [MyAction, ] class ProviderAdmin(object): model_icon = 'fa fa-scissors' actions = [MyAction, ] class OfferAdmin(object): model_icon = 'fa fa-book' actions = [MyAction, ] class ReprotAdmin(object): model_icon = 'fa fa-bookmark' actions = [MyAction, ] xadmin.site.register(views.BaseAdminView, BaseSetting) xadmin.site.register(views.CommAdminView, GlobalSettings) xadmin.site.register(models.Channel, ChannelAdminn) xadmin.site.register(models.CheckIdfa, CheckIdfaAdmin) xadmin.site.register(models.Provider, ProviderAdmin) xadmin.site.register(models.Offer, OfferAdmin) xadmin.site.register(models.Report, ReprotAdmin)
在xadmin安裝的時候可能會有點坑,我相同的環境不一樣的筆記本一個兩分鐘搞定,一個一天沒搞定。。最後仍是用了本身不太喜歡的額方法去實現暫時的功能api
通常狀況下使用pip安裝就沒啥問題:pip install django-xadmin,他會安裝全部的依賴,,可是有時候不行,,會報錯,,詳細參考下邊博客裏的解決方案,感受不必寫了app
須要在settings中配置appside
,通常配置前兩個就夠了,若是按照不上直接下載兩個包,直接放在項目根目錄crispy_forms,xadminspa
小技巧:直接在adminx文件夾中寫代碼有部分沒有自動補齊,,此時在admin中寫,,而後直接粘貼過來就行了,,他倆方法都是通用的(好像是,多試試).net
參考一:https://blog.csdn.net/jamin2018/article/details/79017636code
參考二:https://blog.csdn.net/kingken212/article/details/46992535
參考三:https://blog.csdn.net/qq_41673534/article/details/79470503
省略·······