Django資料庫連線

資料庫設定

開啟Hangman/settings.py。Django預設為SQLite,但也支援PostgreSQL、MySQL、Orcale。
其他設定參考Django Database。

*使用MySQL遇到的問題,Django2.1.*需要MySQL5.6或以上的版本。
否則需在settings.py上方加入

from django.db.backends.mysql.base import DatabaseWrapper
DatabaseWrapper.data_types['DateTimeField'] = 'datetime'

建立models
開啟game/models.py

from django.db import models

class Vocabulary(models.Model):
    word_text = models.CharField(max_length=20)
    pub_date = models.DateField('date published')

編輯settings.py,加入game app

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'game.apps.GameConfig',
]

同步資料庫
產生要調整資料庫的記錄
python manage.py makemigrations game

顯示要執行的SQL
python manage.py sqlmigrate game 0001

欄位寫入資料庫
根據剛剛產生的記錄,將models.py的欄位寫入資料庫
python manage.py migrate

建立admin帳號
python manage.py createsuperuser

建立完後執行
python managa.py runserver

輸入http://127.0.0.1:8000/admin/進入管理員後台

註冊Model Class
編輯game/admin.py

from django.contrib import admin

from .models import Vocabulary

admin.site.register(Vocabulary)

留言