Django 創建超級用戶


Django自帶的后台管理是Django明顯特色之一,可以讓我們快速便捷管理數據。后台管理可以在各個app的admin.py文件中進行控制

 

 

#創建超級用戶

python manage.py createsuperuser

 

注意密碼需要8位,數字和字母組合

 

存儲在auth_user表中

 

一、       基本設置

 

1、應用注冊

若要把app應用顯示在后台管理中,需要在admin.py中注冊。這個注冊有兩種方式,我比較喜歡用裝飾器的方式。

先看看普通注冊方法。打開admin.py文件,如下代碼:

1

2

3

4

5

6

7

8

9

from django.contrib import admin

from blog.models import Blog

  

#Blog模型的管理器

class BlogAdmin(admin.ModelAdmin):

    list_display=('id', 'caption', 'author', 'publish_time')

     

#在admin中注冊綁定

admin.site.register(Blog, BlogAdmin)

  上面方法是將管理器和注冊語句分開。有時容易忘記寫注冊語句,或者模型很多,不容易對應。

還有一種方式是用裝飾器,該方法是Django1.7的版本新增的功能:

1

2

3

4

5

6

7

from django.contrib import admin

from blog.models import Blog

  

#Blog模型的管理器

@admin.register(Blog)

class BlogAdmin(admin.ModelAdmin):

    list_display=('id', 'caption', 'author', 'publish_time')

  該方式比較方便明顯,推薦用這種方式。

 

2、admin界面漢化

默認admin后台管理界面是英文的,對英語盲來說用起來不方便。可以在settings.py中設置:

  1. LANGUAGE_CODE = 'zh-CN'
  2. TIME_ZONE = 'Asia/Shanghai'

1.8版本之后的language code設置不同:

  1. LANGUAGE_CODE = 'zh-hans'
  2. TIME_ZONE = 'Asia/Shanghai'

 

 

 

admin.py

 

from django.contrib import admin

 

from supermarket.models import Product

 

 

@admin.register(Product)

class ProductAdmin(admin.ModelAdmin):

    list_display=('id', 'name', 'price')

 

    #list_per_page設置每頁顯示多少條記錄,默認是100條

    list_per_page = 50

 

    #ordering設置默認排序字段,負號表示降序排序

    ordering = ('-created_time',)

 

    #list_editable 設置默認可編輯字段,在列表里就可以編輯

    list_editable = ['title', 'user']

 

    #設置哪些字段可以點擊進入編輯界面

    list_display_links = ('id', 'title')

 

#設置查找字段

search_fields=['title']

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM