Django數據模型

1.Django連接數據庫

1.1) 常見的數據庫操作
常見的數據庫
關系型數據庫:sqlite/mysql/sql server/oracle/db2
非關系型數據[NoSQL:not only sql]:mongdb\redis\memcache…
使用最多還是關系型數據庫
數據庫的搭建
開發環境:主要是方便開發使用安裝的數據庫
可以是小型數據庫、可以不穩定、可以丟失數據…
目的:測試程序功能
生產環境:主要是為了給程序提供完整的數據存儲安裝的數據庫
針對性的數據庫
通常情況下,數據庫會單獨部署一個服務器[數據庫服務器]
開發環境的數據庫搭建(mysql):
快速、方便、可用
官方網站下載數據庫安裝包——完整安裝數據庫[常用]
安裝第三方的集成工具,項目需要的各種功能都具備了wamp/xampp
wamp:w web | a apache | m mysql | p php
xampp: a apache | m mysql | p php | p perl
2.Django連接數據庫
連接數據庫是一種項目操作,這樣的操作方式,一般通過配置的方式直接實現即可!通過修改settings.py配置文件來連接指定的數據庫

2.pymysql完成的數據庫連接

  1. 要使用pymysql完成數據庫連接,要通過指定使用mysqldb的方式進行操作
  2. 通過配置DATABASES來完成和數據庫之間的連接
# 引入需要的模塊
 import pymysql
 # 轉換數據庫支持 
pymysql.install_as_MySQLdb()  
DATABASES = {    
               'default': {         'ENGINE': 'django.db.backends.mysql',                             
               'NAME': 'py_db',        
               'USER': 'root',         
               'PASSWORD': '',  # 配置為空表示無密碼        
               'HOST': '',       # 配置為空表示連接的是當前 PC          
               'PORT': '3306'     }
 }
例如:
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': "tiantian",
        "USER":"root",
        "PASSWORD":"root",
    }
}

如此~Django 和數據庫之間的連接關系就建立了

3.定義創建模型

1.定義一個用戶類型

class UserInfo(models.Model):

為了保障讓我們定義的類型,交給Django進行自動管理,需要繼承django.db.models.Model類型
為了讓Django能管理我們定義的類型創建的對象,所有的屬性,通過Django內置的方法進行創建

from django.db import models

# Create your models here.
#用戶模型類
class UserInfo(models.Model):
    uname=models.CharField(max_length=50)
    upwd=models.CharField(max_length=40)
    uemail=models.CharField(max_length=30)
    ushou=models.CharField(max_length=20,default="")
    uadder=models.CharField(max_length=100,default="")
    ubian=models.CharField(max_length=10,default="")
    uphone=models.CharField(max_length=11,default="")
image.png

image.png

4.數據庫的同步操作

根據定義的類型,自動生成sql語句
python manage.py makemigrations
查看生成的sql語句
python manage.py sqlmigrate <name> <no>
執行sql語句,同步數據庫
python manage.py migrate
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • # Python 資源大全中文版 我想很多程序員應該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,563評論 6 427
  • 一,簡單的數據導出(dumpdata)與導入(loaddate)(簡單的遷移) 1,數據導出 pythonmana...
    huisheng閱讀 5,401評論 0 6
  • Python 資源大全中文版 awesome-python[https://github.com/vinta/aw...
    萬色星辰閱讀 9,801評論 0 255
  • 環境管理管理Python版本和環境的工具。p–非常簡單的交互式python版本管理工具。pyenv–簡單的Pyth...
    MrHamster閱讀 3,850評論 1 61
  • 轉眼之間又到了冬天,正如她的那句吧,春天到了冬天還會遠嗎?我打開窗簾看著外面飄落的白雪,她現在過得怎么樣,也許是因...
    白棉球閱讀 265評論 0 0