Django去操作已經存在的資料庫

2022-09-01 18:39:06 字數 2409 閱讀 6911

資料庫,各種表結構已經建立好了,甚至連資料都有了,此時,我要用django管理這個資料庫,orm對映怎麼辦???

django是最適合所謂的green-field開發,即從頭開始乙個新的專案

但是呢,django也支援和以前遺留的資料庫和應用相結合的。

django的資料庫層從python**生成sql schemas。但是對於遺留的資料庫,你已經用於sql schemas,這種情況下你需要為你已經存在的資料庫表寫模型(為了使用資料庫的api),幸運的是,django自帶有通過閱讀你的資料庫表規劃來生成模型**的輔助工具 manage.py inspectdb

#修改setting.py檔案

database =

}

#由於django內部鏈結mysql資料庫的時候預設的是使用mysqldb的

#但是python3中沒有這個模組

#所以我們要去修改他的project同名資料夾下的__init__檔案

import pymysql

pymysql.install_as_mysqldb()

然後呢,我們就需要根據資料庫去自動生成新的models檔案

python manage.py inspectdb    #簡單可以看一下自動對映成的models中的內容
匯出並且去代替models.py

python manage.py inspectdb > models.py
這樣你就會發現在manage.py的同級目錄下生成了乙個models.py檔案

如果完成了以上的操作,生成的是乙個不可修改/刪除的models,修改meta class中的managed = true則可以去告訴django可以對資料庫進行操作

此時,我們再去使models.py和資料庫進行同步

python manage.py migrate
然我們來驗證一下:

python manage.py shell

#一些查詢語句

資料庫,各種表結構已經建立好了,甚至連資料都有了,此時,我要用django管理這個資料庫,orm對映怎麼辦???django是最適合所謂的green-field開發,即從頭開始乙個新的專案但是呢,django也支援和以前遺留的資料庫和應用相結合的。

django的資料庫層從python**生成sql schemas。但是對於遺留的資料庫,你已經用於sql schemas,這種情況下你需要為你已經存在的資料庫表寫模型(為了使用資料庫的api),幸運的是,django自帶有通過閱讀你的資料庫表規劃來生成模型**的輔助工具 manage.py inspectdb

#修改setting.py檔案

database =

}

#由於django內部鏈結mysql資料庫的時候預設的是使用mysqldb的

#但是python3中沒有這個模組

#所以我們要去修改他的project同名資料夾下的__init__檔案

import pymysql

pymysql.install_as_mysqldb()

然後呢,我們就需要根據資料庫去自動生成新的models檔案

python manage.py inspectdb    #簡單可以看一下自動對映成的models中的內容
匯出並且去代替models.py

python manage.py inspectdb > models.py
這樣你就會發現在manage.py的同級目錄下生成了乙個models.py檔案

如果完成了以上的操作,生成的是乙個不可修改/刪除的models,修改meta class中的managed = true則可以去告訴django可以對資料庫進行操作

此時,我們再去使models.py和資料庫進行同步

python manage.py migrate
然我們來驗證一下:

python manage.py shell

#一些查詢語句

Django去操作連線已經存在的資料庫

django去操作連線已經存在的資料庫 要麼是之前沒有連線過的,要麼是加過這個類,修改過錶名,不依賴應用名 class meta managed false db table django session 解決方法 python manage.py inspectdbpython3 manage.p...

django連線已經存在資料的資料庫

資料庫,各種表結構已經建立好了,甚至連資料都有了,此時,我要用django管理這個資料庫,orm對映怎麼辦?django是最適合所謂的green field開發,即從頭開始乙個新的專案但是呢,django也支援和以前遺留的資料庫和應用相結合的。django的資料庫層從python 生成sql sch...

Github 推送已經存在的專案

之前自己搭建了乙個小的專案,想著儲存一下,就想著儲存在github上,但是不知道如何推送專案,以下就是一些簡單的備註 1,首先需要在github建立遠端倉庫 依次填寫你要建立的倉庫的名稱,描述,並且初始化乙個readme檔案 2,進入當前專案所在的目錄,注意,我本身並沒有在windows系統中安裝g...