溫馨提示×

溫馨提示×

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

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

djangoORM數(shù)據(jù)類型及基本操作

發(fā)布時間:2020-07-02 19:40:12 來源:網(wǎng)絡(luò) 閱讀:551 作者:LanYuLei 欄目:開發(fā)技術(shù)

     鄙人最近初次嘗試用django來寫web管理工具,對ORM數(shù)據(jù)類型方面有些疑問,今日將ORM整體熟悉了一下。

     下面介紹開始了,阿優(yōu)ruai得:

ORM常用的數(shù)據(jù)類型
   1. null = True或者False,若是想限制字段可以為空的話, 需要加上black=true(限制admin)
   2. choices 設(shè)置男女
   3. db_column  設(shè)置數(shù)據(jù)庫中字段的名字 db_column = ''
   4. db_index  索引: 給制定字段做索引  db_index = True
   5. db_tablespace  表空間
   6. default   給字段生成默認(rèn)值
   7. editable = False   設(shè)置在web頁面上不能修改的input, 隱藏掉
   8. error_messages = [dic] 數(shù)值是字典的樣式,具體的沒有用過,請大神指點(diǎn)
   9. help_text = 'text' 提示用戶如何輸入的
   10. primary_key  設(shè)置主鍵
   11. unique  設(shè)置字段的唯一   unique = True
   12. unique_to_date   設(shè)置每天只能做一次, 記錄一次時間
   13. verbose_name 就是設(shè)置你的頁面上的顯示的字段名字

ORM操作
   1. python manage.py shell
      # 直接根據(jù)django的環(huán)境變量來進(jìn)入shell命令行
   2. models.Author.objects.all()
      # 查找author下的所有內(nèi)容
   3. models.Author.objects.last()
      # 查找Author 最后一個內(nèi)容
   4. a1.last_name = 'liming'
      a1.save()
      # 直接修改數(shù)據(jù)庫內(nèi)容
   5. models.Author.objects.create()
      # 創(chuàng)建數(shù)據(jù)
   6. models.Authot.objects.filter(last_name='lan',first_name='lei')
      # 過濾字段查找,相當(dāng)于sql中的where
   7. models.Author.object.first()
      # 顯示查詢到的第一個元素
   8. models.Author.objects.filter(last_name__contains='lan')
      # 在字段元素中加上__contains就是代表這sql中的like模糊查詢
   9. models.Author.objects.filter(last_name__icontaians='LAn')
      # 忽略大小寫的迷糊查詢,將__contains變成__icontains便是忽略大小寫了
   10. models.Author.objects.filter(id__range(1,10))
      # 范圍查找,查找id1-10之間的所有數(shù)據(jù)
   11. models.Author.objects.filter(first_name__contains='Lan').update(first_name='Guo')
      # 批量修改數(shù)據(jù)首先模糊查詢到想要的數(shù)據(jù),通過update來修改成指定的數(shù)據(jù)
   12. b1.authors.select_related()
      # 相當(dāng)于做關(guān)聯(lián)查詢, 查詢出這本書有多少個作者




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

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

AI