通過django來對資料庫進行增刪改查
3 python manage.py makemigrations
4 python manage.py migrate
django 常用命令:
django :python3 manage.py startproject project_name
python3 manage.py syncdb
拿models裡面的乙個類舉例:
我們先看models建立乙個資料庫的方法:
classwebgroup(models.model):
name = models.charfield(max_length=64)
brief = models.charfield(max_length=255,blank=true,null=true)
owner =models.foreignkey(userprofile)
admins = models.manytomanyfield(userprofile,blank=true,related_name='
group_admins')
members = models.manytomanyfield(userprofile,blank=true,related_name='
group_members')
max_members = models.integerfield(default=200)
def__str__
(self):
return self.name
同步資料庫
python manage.py makemigrations
python manage.py migrate
本人使用的是django1.9.5版本
2.建立超級管理員
python manage.py createsuperuser
3.執行django
python manage.py runserver 8000
1 增加資料
我們在views裡面隨便定義乙個方法名,然後下如以下** ,寫入以下**:
if request.method == "post":
input_em = request.post['em'] # em 和 pwd都是和form表單裡面的一一對應
input_pw = request.post['pwd']
print(input_pw,input_em)
models.userinfo.objects.create(email=input_em, pwd=input_pw) #models呼叫的是先前建立好的資料庫
當出現這個報錯提示的時候,我們應該在html頁面上的form表單裡面新增這行內容:
2 刪除資料
models.userinfo.objects.filter(email=input_em).delete()
3 更改資料:
models.userinfo.objects.filter(email=input_em).update(pwd='nihao')
4 檢視資料:
我們需要在html頁面裡巢狀jinja2的**,下面**能夠在表單裡面根據後台資料庫的內容來展示,**如下:
#前端**的jinja2語法如下
#user_info_list 實際上就是從models裡面獲取的物件。}#
每個遍歷出來的物件都有emmail這個屬性,因為我們在定義這個表的時候就定義了email欄位
}
後端django,views裡面的方法
defindex(request): #
資料庫獲取資料,資料和html渲染
models
user_info_list =models.userinfo.objects.all()
return render(request,'
index.html
',)
orm的增刪改查
orm增加字段 phone models.charfield max length 64,default 120 後來新增的字段需要設定預設值 orm刪除字段 注釋掉字段,執行資料庫遷移命令 慎重 修改字段 直接修改字段,執行資料庫遷移命令 單錶查詢 res models.user.objects....
orm簡單的增刪改查
類 type user struct增加 插入 1.有orm物件 o orm.neworm 2.有乙個插入資料的結構體物件 user models.user 3.對結構體賦值 user.name 111 user.pwd 222 4.插入 err o.insert user if err nil刪除...
django 利用ORM對單錶進行增刪改查
牛小妹上周末,一直在嘗試如何把資料庫的資料弄到介面上。畢竟是新手,搞不出來,文件也看不懂。不過沒關係,才剛上大學。今晚我們就來解釋下,要把資料搞到介面的第一步。先把資料放到庫里,然後再把資料從庫里拿出來。以下內容,參考django官方文件 這裡和官方文件一致。直接拷出來,放到乙個叫models的py...