溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

py_Django的管理界面

發(fā)布時(shí)間:2020-07-31 14:35:01 來源:網(wǎng)絡(luò) 閱讀:449 作者:lc994811089 欄目:開發(fā)技術(shù)

激活管理界面(django.contrib.admin

django.contrib中其它可用的特性,如用戶鑒別系統(tǒng)(django.contrib.auth)、支持匿名會(huì)話(django.contrib.sessioins)以及用戶評(píng)注系統(tǒng)(django.contrib.comments)。


1、setting配置

INSTALLED_APPS                # 自行添加
'django.contrib.admin'

INSTALLED_APPS                # 確保存在  Django的管理工具需要這3個(gè)包
'django.contrib.auth','django.contrib.contenttypes'和'django.contrib.sessions'
MIDDLEWARE_CLASSES 
'django.middleware.common.CommonMiddleware'
'django.contrib.sessions.middleware.SessionMiddleware'
'django.contrib.auth.middleware.AuthenticationMiddleware' 。


2、模型安裝

這是1.9版本的命令

$ python manage.py makemigrations books    表示保存更改到一個(gè)migration中,這都是文件
$ python manage.py sqlmigrate books 0001   表示執(zhí)行一個(gè)migrations ,并返回他們的SQL
                                            -- App_01/migrations/0001_initial.py
$ python manage.py migrate             執(zhí)行變更
$ python manage.py shell                可進(jìn)入配置數(shù)據(jù)庫--
$ python manage.py createsuperuser        創(chuàng)建一個(gè)超級(jí)用戶

這時(shí)1.9版本以前的命令

python manage.py validate                            檢查你的模型的語法和邏輯
python manage.py sqlall books                        生成 CREATE TABLE 語句
python manage.py syncdb                              提交SQL語句至數(shù)據(jù)庫
python manage.py dbshell                             可進(jìn)入數(shù)據(jù)庫交互(sql語句)
python manage.py shell                               帶環(huán)境的python交互
        from books.models import Publisher           可在此對(duì)數(shù)據(jù)庫操作
        p1 = Publisher(name='Apress', address='2855 Telegrap....................
        p1.save()                    sql 會(huì)執(zhí)行一條INSERT 語句


3、將admin添加 URLconf


1.9版本

from django.conf.urls import url
from django.contrib import admin
from  books import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),]

1.9以前的

# Include these import statements...
from django.contrib import admin
admin.autodiscover()

# And include this URLpattern...
urlpatterns = patterns('',
    # ...
    (r'^admin/', include(admin.site.urls)),
    # ...
)



4、更改admin管理界面語言

 MIDDLEWARE_CLASSES                # 更改django的語言   setting.py
'django.contrib.sessions.middleware.SessionMiddleware'.
'django.middleware.locale.LocaleMiddleware'

5、注冊(cè)模型

將模型中定義的數(shù)據(jù)類型,注冊(cè)到 admin.py中,就可以通過admin管理界面操作

from django.contrib import admin
from mysite.books.models import Publisher, Author, Book

admin.site.register(Publisher)
admin.site.register(Author)
admin.site.register(Book)






設(shè)置可選字段

為了指定email字段為可選,你只要編輯Book模塊(它在mysite/books/models.py文件里),在email字段上加上blank=True。

(默認(rèn)blank=False),但有些數(shù)據(jù)指空(字符串)會(huì)錯(cuò)誤如:日期型、時(shí)間型和數(shù)字型字段,那么只能用NULL指空

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField(**blank=True, null=True** )

自定義字段標(biāo)簽

class Author(models.Model):
# 指定verbose_name將Author.email的標(biāo)簽改為e-mail
    email = models.EmailField(blank=True, **verbose_name='e-mail'** )



向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

py dj
AI