歡迎光臨
每天分享高質量文章

如何基於Python搭建Django後臺管理系統

一、部落格網站的建立

  1. 建立專案 

生成站點(sites)Model,這兩步驟第一篇有介紹,這裡就直接操作了 

二、資料庫配置

  1. 介紹一下資料庫的配置就是在setting裡面配置連結的資料庫,這裡系統以及配置好了,連結一個叫做db.sqlite3的資料庫,也許有讀者會問,這個資料庫在哪裡,我怎麼沒有,沒關係,你跑一下專案,系統就自動生成一個這個資料庫了,當然django也支援MySQL等其他資料庫,這裡為了方便講解,就用系統自帶的 

INSTALLED_APPS 這個引數是安裝myBlog這個專案中所有用到的Application,當然我們建立的sites也是一個Application,所有也加進去,下麵這幾個都是系統自帶的框架,預設安裝

  • django.contrib.admin —— 管理站點

  • django.contrib.auth —— 認證系統

  • django.contrib.contenttypes —— 用於內容型別的框架

  • django.contrib.sessions —— 會話框架

  • django.contrib.messages —— 訊息框架

  • django.contrib.staticfiles —— 管理靜態檔案框架

  1. 新增完sites到INSTALLED_APPS後需要執行下麵終端命令, migrate會檢視INSTALLED_APPS的設定,並根據myBlog/settings.py檔案中的資料庫設定建立任何必要的資料庫表

python manage.py migrate


之後,我們執行一下專案,輸入http://127.0.0.1:8000/admin 看一下效果 

三、資料庫後臺搭建

  1. 到登入頁基本完成一半啦,接下來就需要建立一個管理員賬戶用於登入使用,

python manage.py createsuperuser

 
2. 建立完賬戶就可以去登入了,效果如下 

3. 因為全部是英文,程式碼君看不慣,想把他改成中文settings.py中將LANGUAGE_CODE 中的’en-us’ 改成 ‘zh-Hans’,這樣看起來是不是舒服多了 

四、建立資料庫模型

  1. 在sites中的models建立資料庫表的模型,如下圖,欄位有title、url、body、create_date, 

五、啟用模型 
這步很關鍵,你每次修改model裡面的資料,都要從復執行這下麵這幾個步驟:

  1. 在 myBolg/settings.py 中,修改INSTALLED_APPS,引入要用到的Application,我們目前只有一個sites,已經取用過了,所以無需再取用

  2. 執行終端命令

python manage.py makemigrations
python manage.py migrate
  • 1

  • 2

 
3. 將model新增到sites/admin.py裡 

4. 執行一下專案,開啟管理介面,檢視效果,然後你就看隨意新增Article內容啦 http://127.0.0.1:8000/admin 

 

六、踩坑總結

  1. UnicodeEncodeError: ‘ascii’ codec can’t encode characters 
    之前模型model中寫了一個方法 def str(self):這個是舊版本中用的方法,Django新版本要換成def unicode(self):, 這樣就解決了字串傳遞時出錯的問題,統一編碼為Unicode字串。

  2. OperationalError no such table / OperationalError table sites_article has no column named test 
    這是一類錯誤,就是我之前提醒的,我們增加model或者修改models.py裡面的程式碼後,需要從新執行步驟五,步驟五的作用就是更新資料庫表的資訊,比如你新增model中的一個欄位,沒有更新資料庫表,自然會報上面的錯誤 
    解決方法:執行步驟五的終端命令

python manage.py makemigrations
python manage.py migrate

作者:程式碼君_Coder

源自:

https://blog.csdn.net/u012927188/article/details/78978611



贊(0)

分享創造快樂