admin站點管理

2022-06-12 10:18:09 字數 2158 閱讀 2566

admin中的顯示

class saltstack_groupadmin(admin.modeladmin):

list_display = ['group_name','salt_minion_id'] # 這裡需要注意的是,salt_minion_id是我們要在前端展示的內容,自己定義的

def salt_minion_id(self,obj):

# 這個方法就是用來對salt_minion_id這個欄位做處理,把我們需要展示的前端內容擷取出來。需要注意的是,方法名必須要和在list_display裡面的一致,這樣才可以呼叫。

print(obj.host_target.salt_minion_id)

return obj.host_target.salt_minion_id # host_target是我們saltgroup表中多對多的字段,salt_minion_id是剛才我們自定義的字段,

salt_minion_id.short_description = "minion's id " # 對salt_minion_id這個做個簡短的title。

class inline(admin.stackedinline):

model = setting

class mediaadmin(admin.modeladmin):

search_fields = ('name',)

list_display = ('name', 'enable', 'user')

inlines = (inline,)

### 在media表中顯示setting中的設定項

對於後台model的展示,在list_display中指定好展示的字段,假如字段對應的是外來鍵字段,在後台展示中顯示的是乙個object物件,我們需要展示的是外來鍵關聯的模型的名字,則在外鍵關聯的模型類下建立__str__方法,return的就是該模型類的name,假如這個模型還有外來鍵關聯的模型,就可以在return 的時候進行字串的拼接,然後在後台中就可以看到原來顯示object的地方改成了模型的名稱

建立了model的管理類,如果什麼都不指定,在class下直接pass,這樣在後台admin中顯示的就是乙個個的資料物件。要展示資料的話還是需要指定list_fileld search_field的

在源類中進行指定。

class meta:

db_table = 'links'

verbose_name_plural = '後台顯示的表名'

可以指定多個字段組成唯一的字段

unique_together = ('name','link','bank')

外來鍵應該是不能為空的 null=true blank=true都沒用 (這是是錯誤的理解)

外來鍵應該可以置空,置空就表示現在不確定,當前與之關聯的表示沒有關係的,有關係的採用外來鍵,沒有關係的就可以置空

--20190730

在後台頁面中可以看到最近的操作歷史,一般是右側有增刪的資料歷史,一般顯示10條。,進入資料詳情,右上方有history歷史,如果在一段時間內坐過更改,那麼會有歷史記錄

# 顯示的字段

list_display = ('title', 'body', 'auth', 'create_time', 'update_time')

# 搜尋條件

search_fields = ('title',)

# 按欄位排序 -表示降序

ordering = ('-create_time',)

# 每頁顯示10條

list_per_page = 10

# 可編輯字段

list_editable = ('auth',)

# 設定哪些字段可以點選進入編輯介面

list_display_links = ('title', 'body')

# 過濾器

list_filter = ('auth', 'title')

# 時間分層

date_hierarchy = 'create_time'

時間分層,以月為單位分類資訊

Django之admin站點管理

站點首頁 將專案裡models.py中的類名以中文顯示?可以在下圖中的位置插入這樣一段 class meta verbose name 房東資訊 verbose name plural 房東資訊 複數時 列表頁屬性django自帶的原始列表頁是長這樣滴 我們想要的頁面長這樣 所以,我們需要在專案裡的...

Django的Admin站點管理

內容發布 負責新增 修改 刪除內容 公告訪問 在專案的根目錄下,執行命令 python manage.py createsuperuser 依次輸入使用者名稱 郵箱 密碼 密碼不能太複雜 修改setting.py language code zh hans time zone asia shangh...

Django 學習 3 ADMIN站點管理

站點管理 django提供了乙個自動生成的超級管理員站點,如果你曾經注意到admin頁面,那麼就是它了。如果要去生成乙個管理員站點讓你的員工或客戶去增 刪 改站點內容是一件乏味而缺乏創造性的事情,因此,dajngo為models自動的建立了管理員介面。django在新聞編輯部的環境中被寫出來的,對內...