您好,登錄后才能下訂單哦!
django.contrib中其它可用的特性,如用戶鑒別系統(django.contrib.auth)、支持匿名會話(django.contrib.sessioins)以及用戶評注系統(django.contrib.comments)。
1、setting配置
INSTALLED_APPS # 自行添加 'django.contrib.admin'
INSTALLED_APPS # 確保存在 Django的管理工具需要這3個包 '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 表示保存更改到一個migration中,這都是文件 $ python manage.py sqlmigrate books 0001 表示執行一個migrations ,并返回他們的SQL -- App_01/migrations/0001_initial.py $ python manage.py migrate 執行變更 $ python manage.py shell 可進入配置數據庫-- $ python manage.py createsuperuser 創建一個超級用戶
這時1.9版本以前的命令
python manage.py validate 檢查你的模型的語法和邏輯 python manage.py sqlall books 生成 CREATE TABLE 語句 python manage.py syncdb 提交SQL語句至數據庫 python manage.py dbshell 可進入數據庫交互(sql語句) python manage.py shell 帶環境的python交互 from books.models import Publisher 可在此對數據庫操作 p1 = Publisher(name='Apress', address='2855 Telegrap.................... p1.save() sql 會執行一條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、注冊模型
將模型中定義的數據類型,注冊到 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)
設置可選字段
為了指定email字段為可選,你只要編輯Book模塊(它在mysite/books/models.py文件里),在email字段上加上blank=True。
(默認blank=False),但有些數據指空(字符串)會錯誤如:日期型、時間型和數字型字段,那么只能用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** )
自定義字段標簽
class Author(models.Model): # 指定verbose_name將Author.email的標簽改為e-mail email = models.EmailField(blank=True, **verbose_name='e-mail'** )
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。