今天花了一些時間搭了一個博客系統(tǒng),雖然并沒有相關(guān)于界面的美化,但是發(fā)布是沒問題的。
成都創(chuàng)新互聯(lián)是一家專業(yè)提供孟州企業(yè)網(wǎng)站建設,專注與成都網(wǎng)站設計、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設、html5、小程序制作等業(yè)務。10年已為孟州眾多企業(yè)、政府機構(gòu)等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設公司優(yōu)惠進行中。開發(fā)環(huán)境
操作系統(tǒng):windows 7 64位
Django: 1.96
Python:2.7.11
IDE: PyCharm 2016.1
功能篇
既然是博客系統(tǒng),發(fā)布的自然是博客了。讓我們想想,一篇博客有什么屬性。所以我們要有能添加博客,刪除博客,修改博客,以及給博客發(fā)評論,貼標簽,劃分類等功能。
關(guān)系分析
屬性
博客:標題,內(nèi)容。
標簽:標簽名
分類:分類的名稱
評論:評論人,評論人email,評論內(nèi)容
關(guān)系
博客:一篇博客可以有多個標簽,多個評論,屬于一個分類
標簽:一類標簽可以賦予多篇博客,一個博客也可以由多個標簽,所以是多對多的關(guān)系
分類:一個分類內(nèi)部可以有多個博客,所以和博客是一對多的關(guān)系
評論:很明顯一個評論屬于一個博客,而一個博客可以有很多的評論,所以是一對多的關(guān)系。
模型層設計
廢話不多說,根據(jù)上一步的關(guān)系分析,直接設計即可。
# coding:utf8 from __future__ import unicode_literals from django.db import models # Create your models here. class Catagory(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('發(fā)布時間',auto_now_add=True) catagory = models.ForeignKey(Catagory,verbose_name='分類') tags = models.ManyToManyField(Tag,verbose_name='標簽') def __unicode__(self): return self.title class Comment(models.Model): """ 評論 """ blog = models.ForeignKey(Blog,verbose_name='博客') name = models.CharField('稱呼',max_length=16) email = models.EmailField('郵箱') content = models.CharField('內(nèi)容',max_length=240) created = models.DateTimeField('發(fā)布時間',auto_now_add=True) def __unicode__(self): return self.content