1. 程式人生 > 程式設計 >Django搭建專案實戰與避坑細節詳解

Django搭建專案實戰與避坑細節詳解

Django 開發專案是很快的,有多快?看完本篇文章,你就知道了。

安裝 Django

前提條件:已安裝 Python。

Django 使用 pip 命令直接就可以安裝:

pip install django

如果安裝失敗,很可能是因為網路連線超時了,試試國內映象:

pip install --default-timeout=6000 -i https://pypi.tuna.tsinghua.edu.cn/simple django

這條命令同時延長了超時時間,提高成功率。

安裝完成後,通過 django-admin --version 這條命令驗證。

建立 project

按住 Windows 鍵 + R,輸入 cmd 回車,接著 cd 到任意目錄:

Django搭建專案實戰與避坑細節詳解

或者先開啟目錄視窗,在位址列輸入 cmd 回車,不需要 cd(推薦):

Django搭建專案實戰與避坑細節詳解

在命令列視窗輸入命令建立 project:

django-admin startproject mysite

目錄結構如下(注意有 2 個 mysite 哦):

mysite/
 manage.py
 mysite/
  __init__.py
  settings.py
  urls.py
  asgi.py
  wsgi.py

建立 app

Django 專案由 1 個 project 和多個 app 組成。project 存放專案配置,app 是網站各個功能的具體實現。

app 的放置目錄沒有限制,這裡先放在和 mysite 的同級目錄中,先進入外層的 mysite 資料夾:

cd mysite

輸入命令建立:

django-admin startapp polls

目錄結構如下:

mysite/
	polls/
  __init__.py
  admin.py
  apps.py
  migrations/
   __init__.py
  models.py
  tests.py
  views.py
 mysite/
 manage.py

使用 cmd 建立完 project 和 app 以後,就可以開啟 PyCharm,再 Open mysite 專案了:

Django搭建專案實戰與避坑細節詳解

為了讓 app 和 project 關聯起來,需要在 mysite/settings.py 檔案中新增配置:

INSTALLED_APPS = [
 'django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','polls.apps.PollsConfig',# 新增
]

在 polls/models.py 檔案中新增資料模型:

from django.db import models


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)

連線 MySQL

前提條件:已安裝 MySQL,建立好資料庫。

Django 預設使用輕量級資料庫 SQLite,我們切換為常用的 MySQL。

修改 mysite/settings.py 中的資料庫配置:

DATABASES = {
 'default': {
  'ENGINE': 'django.db.backends.mysql','HOST': '主機','PORT': 埠,'NAME': '資料庫名','USER': '使用者名稱','PASSWORD': '密碼'
 }
}

Django 預設通過底層呼叫 mysqlclient 這個庫和 MySQL 互動。但是 mysqlclient 非常不好安裝!我們改用 pymysql。

先安裝:

pip install pymysql

然後在與 mysite/settings.py 檔案同級的 __init__ 檔案中新增:

import pymysql

pymysql.version_info = (1,4,"final",0)
pymysql.install_as_MySQLdb()

資料遷移

資料遷移,指的是把程式碼中的資料模型,遷移到資料庫中,建立相應的表結構。

第一步,告訴 Django 資料模型有更新:

python manage.py makemigrations polls

執行後輸出:

Migrations for 'polls':
 polls/migrations/0001_initial.py
 - Create model Question
 - Create model Choice

第二步,執行資料遷移同步:

python manage.py migrate

執行後輸出:

Operations to perform:
 Apply all migrations: admin,auth,contenttypes,polls,sessions
Running migrations:
 Rendering model states... DONE
 Applying polls.0001_initial... OK

資料庫表就建立好了:

Django搭建專案實戰與避坑細節詳解

啟動專案

萬事俱備,只差 1 條啟動命令,在根目錄執行:

python manage.py runserver

訪問 http://127.0.0.1:8000/,就可以看到來自 Django 老鐵的這發火箭了:

Django搭建專案實戰與避坑細節詳解

小結

本文是對《匆匆一眼》文章的補充。介紹瞭如何安裝 Django,建立 Django 的 project 和 app,連線 MySQL,執行資料遷移,最後啟動專案的實際操作步驟。思路很清晰。整體流程清楚了,可這些檔案都是幹嘛的呢?

參考資料:

https://docs.djangoproject.com/en/3.1/intro/tutorial01/

到此這篇關於Django搭建專案實戰與避坑細節的文章就介紹到這了,更多相關Django搭建專案與避坑內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!