91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用python django框架中的admin actions

發布時間:2020-11-10 09:46:41 來源:億速云 閱讀:224 作者:小新 欄目:編程語言

如何使用python django框架中的admin actions?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

關于django 框架

django 框架配有一個功能強大的管理站點,里面已經預定義了許多管理站點需要進行的操作,但是有時可能默認的操作不能滿足需求,如需要批量更新選中的對象,這需要編寫自定義 action 實現。

Admin actions 簡介

admin actions 是一些在 admin 站點下拉列表中可以選擇執行的簡單函數,比如刪除一個對象操作。

編寫 Admin actions

下面舉例說明如何編寫Admin action。例如批量更新一個名為 Article 的模型:

from django.db import models
 
STATUS_CHOICES = [
 
('d', 'Draft'),
 
('p', 'Published'),
 
('w', 'Withdrawn'),
 
]
 
classArticle(models.Model):
 
title = models.CharField(max_length=100)
 
body = models.TextField
 
status = models.CharField(max_length=1,choices=STATUS_CHOICES)
 
def__str__(self):
 
returnself.title

下面來編寫 action 函數,這個函數接受三個函數:

當前的 ModelAdmin

一個代表當前 HTTP 請求的 HttpRequest 對象

一個包含用戶選定的對象的 QuerySet (數據庫檢索對象)。

def make_published(modeladmin, request,queryset):
queryset.update(status='p')

為了達到最佳性能,推薦使用 QuerySet 的 update 方法

for obj in queryset:
 
do_something_with(obj)

默認情況下,該操作將以“ Make published ”的形式出現在操作列表中,就是函數名,下劃線將由空格替換。為了讓這個方法更容易被人了解,我們可以給它添加一個 short_description 屬性。

def make_published(modeladmin, request,queryset):
queryset.update(status='p')
make_published.short_description ="Markselected stories as published"

感謝各位的閱讀!看完上述內容,你們對如何使用python django框架中的admin actions大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

花莲县| 临海市| 白玉县| 墨竹工卡县| 阿克苏市| 元朗区| 恭城| 泸水县| 肥西县| 云南省| 偏关县| 泽普县| 金寨县| 景泰县| 罗田县| 班玛县| 麦盖提县| 莆田市| 佛山市| 类乌齐县| 灵寿县| 无为县| 湖州市| 濮阳县| 安陆市| 灵宝市| 南雄市| 北碚区| 三穗县| 黄冈市| 东至县| 德化县| 晋中市| 康乐县| 武宁县| 淳化县| 大方县| 江都市| 合作市| 平阳县| 郓城县|