使用:Mac M1
Python 3.8
Django:3.2
建立環境
可參考:安裝virtualenv
進入env後,安裝及查看Django版本:
pip install django
pip list
建立專案
尋找一個位置,建立第一個專案:
django-admin startproject mydjango
創建的資料結構如下:
執行方式:
python manage.py runserver
若想更改默認端口:
python manage.py runserver 0.0.0.0:8899
執行成功如下圖:
開啟瀏覽器,輸入:
http://127.0.0.1:8000/
第一次運行,會看到下圖畫面:
停止方式:Control + C
此時,會多出現一個檔案db.sqlite3
Django主要提供了四種數據庫引擎:
- django.db.backends.postgresql
- django.db.backends.mysql
- django.db.backends.sqlite3
- django.db.backends.oracle
打開setting.py會看到默認引擎是sqlite3,
# Database
# https://docs.djangoproject.com/en/3.2/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
MySQL設置方式:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'djangodb',
'USER': 'root',
'PASSWORD': '12345',
'HOST': '127.0.0.1',
}
}
如果需要更多的配置信息,可以指定配置文件:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS':{
'read_default_file': '/path/to/my.cnf',
},
}
}
配置文件:
# my.cnf
[client]
databases = djangodb user = root password = 12345 default-character-set=utf8
PostgreSQL數據庫配置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'mydatabaseuser',
'PASSWORD': 'mypassword',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
初始化:
python manage.py migrate
創建應用程序
python manage.py startapp books
生成books,如下的資料結構
.
├── books
│ ├── __init__.py
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── tests.py
│ └── views.py
├── db.sqlite3
├── manage.py
└── mydjango
├── __init__.py
├── asgi.py
├── settings.py
├── urls.py
└── wsgi.py
- admin :網站管理設置
- apps :註冊應用相關
- migration :數據庫的升級文件包,會自動升級專案的數據庫
- models :定義模型
- tests :測試相關代碼
- views :定義視圖函式
主要程式撰寫是在views及models