標籤:
一半教程用的Django都是1.8以前的版本,導致跟我用的1.8.2的版本用法有些出入,所以只能自己去官網看文檔,以下一下是看官方文檔而理解的,英語渣渣,可能會有理解有誤的地方
先記錄下如何查看django的版本:
>>>python>>>import django>>>django.VERSION(1, 8, 2, ‘final‘, 0)
把官網的那段樣本Model copy過來,為了加深印象,我自己會手寫一邊:
from django.db import modelsclass Blog(models.Model): name = models.CharField(max_length=100) tagline = models.TextField() def __str__(self): # __unicode__ on Python 2 return self.nameclass Author(models.Model): name = models.CharField(max_length=50) email = models.EmailField() def __str__(self): # __unicode__ on Python 2 return self.nameclass Entry(models.Model): blog = models.ForeignKey(Blog) headline = models.CharField(max_length=255) body_text = models.TextField() pub_date = models.DateField() mod_date = models.DateField() authors = models.ManyToManyField(Author) n_comments = models.IntegerField() n_pingbacks = models.IntegerField() rating = models.IntegerField() def __str__(self): # __unicode__ on Python 2 return self.headline
抄完了:
注意紅框標出來的,這在官方樣本中是沒有的,意思是手動指定表名,如果不手動指定的話,最終產生的表名是:APPName_ModelsName,比如這裡我的app名字是myLesson,Models名字為Blog,產生的表名為:myLesson_Blog
dos虛擬環境下我們來驗證下有沒有錯誤:
--先儲存下
Python Django 開發 2 資料庫