程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

django中模型

編輯:Python

 

 

一、django需要使用數據庫,則需要安裝對應的驅動,比如mysql,則需要安裝mysqlclient驅動:

pip install

  • 1.

二、在settings.py文件中配置數據庫連接信息:

DATABASES = {

'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'firstsite',
'HOST': 'localhost',
'USER': 'root',
'PASSWORD': '123456',
'PORT': '3306',
}
}
# 要求在自己的mysql服務中,先創建好數據庫名字為:firstsite,否則django無法創建表。沒有創建的話,使用python manage.py migrate,結果如下圖所示:
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

 

 django根據python中定義的類映射到數據庫中的表,自動創建app對應的

python manage.py migrate

# migrate命令將遍歷INSTALLED_APPS設置中的所有項目,在數據庫中創建對應的表,並打印出每一條動作信息
  • 1.
  • 2.

三、在模型文件models.py中創建數據庫中表對應的實體類(在app目錄下面的models.py文件中編寫):

 

 

 

 

 

from django.db import models



# Create your models here.
# python manage.py makemigrations polls


class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')


class Choice(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE)
choice_text = models.CharField(max_length=200)
votes = models.IntegerField(default=0)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

告訴django,啟用自己的app:

# Application definition,在配置文件settings.py中配置:


INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'firstapp' #####################填寫自己的app應用名稱,上面這些是django自帶的應用
]
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

讓django根據app中定義的實體類,到配置文件中配置的數據庫去創建對應的表:

#當然,如果數據庫中已經存在相應的表了,就不會創建相同的表了,這裡如果不指定firstapp,那麼會創建該項目下面的所有應用的表。執行這個命令後會在對應的app根目錄下面的migrations目錄下生成移植文件

python manage.py makemigrations firstapp
  • 1.
  • 2.

運行結果如下:

 

 

 

 

 

 正式將firstapp應用中models.py中的類映射到數據庫中的表:

python manage.py migrate

  • 1.

 

 

 

 使用模型中類的api

# 默認會提供類相應的操作api

python manage.py shell
  • 1.
  • 2.

創建超級管理員:

python manage.py createsuperuser

  • 1.

 四、從數據庫中獲取數據:在視圖函數中請求數據庫中的數據

 




  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved