Django入門二之models操作試驗
阿新 • • 發佈:2018-12-14
第一部分:
1.使用 manage.py 工具載入我們的專案來啟動 Python shell :
(env) D:\Development\myproject\myproject>python manage.py shell
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
專案將被新增到sys.path
2.匯入Board類開始:
>>> from boards.models import Board
3.建立新的 board 物件,並且要將這個物件儲存到資料庫中去:
>>> board = Board(name='Django', description='This is a board about Django.')
>>> board.save()
4.可以將其餘的欄位當做Python屬性訪問:
>>>board.id 1 >>>board.name 'Django' >>>board.description 'This is a board'
5.更新一個值,這樣做:
>>> board.description = 'Django discussion board.'
>>> board.save()
第二部分:
1.每個Django模型都帶有一個特殊的屬性; 我們稱之為模型管理器(Model Manager)。可以通過屬性objects
來訪問這個管理器,它主要用於資料庫操作。可以使用它來直接建立一個新的Board物件:
board = Board.objects.create(name='Python', description='General discussi
2.使用objects
列出資料庫中所有現有的版塊:
>>> Board.objects.all()
<QuerySet [<Board: Django>, <Board: Python>, <Board: Random>]>
3.使用模型的 管理器(Manager) 來查詢資料庫並返回單個物件。為此,要使用get()
方法:
>>> Board.objects.get(name='Django')
<Board: Django>
>>> django_board = Board.objects.get(id=1)
>>> django_board.name
'Django'
第三部分:模型操作的總結:
使用前面的Board模型作為參考。大寫的 Board 指的是類,小寫的 board 指 Board 的一個例項(或物件)
操作 | 程式碼示例 |
---|---|
建立一個物件而不儲存 | board = Board() |
儲存一個物件(建立或更新) | board.save() |
資料庫中建立並儲存一個物件 | Board.objects.create(name='...', description='...') |
列出所有物件 | Board.objects.all() |
通過欄位標識獲取單個物件 | Board.objects.get(id=1) |