您好,登錄后才能下訂單哦!
前言
django 的 admin 是個非常方便的admin portal,可以根據自己的需要重寫.
在使用Django自帶的admin后臺的時候,他提供了一些默認的指令可以對數據進行操作, 比如批量刪除,修改等
同樣的我們也可以添加自己的指令。
更多更詳細請看官方文檔:https://docs.djangoproject.com/en/dev/ref/contrib/admin/actions/
創建一個Django項目
$ django-admin startproject DjangoActions $ cd DjangoActions $ python3 manage.py startapp mysite
添加model
打開mysite下的models.py
from django.db import models class Article(models.Model): # 文章狀態,類似枚舉 STATUS_CHOICES = ( ('d', '草稿'), ('p', '發布'), ) # 標題 title = models.CharField(max_length=30) # 內容 body = models.TextField() # 狀態 status = models.CharField(max_length=1, choices=STATUS_CHOICES, default='d') def __str__(self): return self.title
將Article注冊到admin
打開mysite下的admin.py
from django.contrib import admin from .models import Article # 指令處理函數,參數固定寫法 def make_article_published(modeladmin, request, queryset): # queryset 是從數據庫查詢到的model set # 更新status狀態為p,在此處就是Article queryset.update(status='p') # 此指令的名稱 make_article_published.short_description = '更改狀態為發布' #將Article注冊到后臺 @admin.register(Article) class ArticleAdmin(admin.ModelAdmin): # 后臺列表展示的字段 list_display = ('title', 'status') # 動作集合 actions = [make_article_published]
啟動服務
1.首先同步數據庫
$ python3 manage.py makemigrations $ python3 manage.py migrate
2.創建超級用戶
$ python3 manage.py createsuperuser
按照提示操作即可
3.啟動服務
$ python3 manage.py runserver
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。