不知不覺,鐵人賽已經進行到了一半,沒想到竟然撐的到如今。給自己和隊友們一個讚!
今天我們要來介紹一樣神奇的 model,model可以幫助我們以程式來管理資料庫。
首先我們先建立一個名為 products 的 app
docker-compose run app sh -c "python manage.py startapp products"
在settings.py 的 INSTALLED_APPS 中 加入 'products'
我們在建立好之app資料夾中,可以看到 models.py
我們在其中增加一個 product 的 class
class Product(models.Model):
uploader = models.CharField(max_length = 30,blank=True,null=True )
name = models.CharField(max_length = 30,blank=True,null=True )
status = models.CharField(max_length = 15, blank=True,null=True,default='NEW')
description = models.TextField(blank=True,null=True)
view = models.IntegerField(blank=True,null=True)
price = models.IntegerField(blank=True,null=True)
透過這段程式,Django 可以將資料庫進行創建修改。
修改完之後我們一樣執行 makemigrations
docker-compose run app sh -c "python manage.py makemigrations"
螢幕出現以下資訊
Migrations for 'products':
products/migrations/0001_initial.py
- Create model Product
執行 migrate將改變套用至資料庫
docker-compose run app sh -c "python manage.py migrate"
此時我們進入資料庫就可以看到此時我們進入資料庫就可以看到資料庫多了一個products的 table囉~
另外若想要在admin當中管理products相關資料,我們可以在admin.py中加入下內容
from .models import Product
admin.site.register(Product)
加入後我們便可以在admin頁面中看到我們所建立好的 Products
雖然一開始有點不熟悉,但是相信大家應該都可以感受到他的方便性,只要精通了Django,可以讓我們快速的建立許多厲害的服務~
相關資料可參考