1.settings.py這裏按sqlite3自動生成的數據庫
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
2.models.py 建立表
# coding:utf8
from __future__ import unicode_literals
from django.db import models
# Create your models here.
class Category(models.Model):
"""
博客分類
"""
name = models.CharField('名稱', max_length=30)
def __unicode__(self):
return self.name
class Tag(models.Model):
"""
博客標籤
"""
name = models.CharField('名稱', max_length=16)
def __unicode__(self):
return self.name
class Blog(models.Model):
"""
博客
"""
title = models.CharField('標題', max_length=32)
author = models.CharField('作者', max_length=16)
content = models.TextField('博客正文')
created = models.DateTimeField('發佈時間', auto_now_add=True)
category = models.ForeignKey(Category, verbose_name='分類', on_delete=models.CASCADE)
tags = models.ManyToManyField(Tag, verbose_name='標籤')
def __unicode__(self):
return self.title
class Comment(models.Model):
"""
評論
"""
blog = models.ForeignKey(Blog, verbose_name='博客', on_delete=models.CASCADE)
name = models.CharField('稱呼', max_length=16)
email = models.EmailField('郵箱')
content = models.CharField('內容', max_length=240)
created = models.DateTimeField('發佈時間', auto_now_add=True)
def __unicode__(self):
return self.content
執行命令
Python manage.py makemigrations blogapp
python manage.py migrate
數據庫創建表後的效果如下
3.登錄django後臺管理界面
Python manage.py createsuperuser
4.調整工程下的url.py
from django.contrib import admin
from django.urls import path
from django.conf.urls import url, include
"""
urlpatterns = [
path('admin/', admin.site.urls),
]
"""
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/', include('blogapp.urls')),
]
新建app下的url.py
from django.contrib import admin
from django.urls import path
from blogapp import views
from django.conf.urls import url
"""
urlpatterns = [
path('admin/', admin.site.urls),
]
"""
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', views.index),
]
5 admin.py註冊數據庫
from django.contrib import admin
from blogapp.models import *
# Register your models here.
admin.site.register(Category)
admin.site.register(Blog)
admin.site.register(Tag)
admin.site.register(Comment)
運行後如下,此時可以管理表內容,可以脫離數據庫可視化操作