博客系统
一、新建工程
创建项目
Django-admin startproject conf
conf 是项目名称
此时会在当前目录下生成一个与之同名的目录,这是Django的配置文件目录
我们将项目名称改为Blog,也可不改,只是方便记忆
二、建立静态文件夹
配置静态文件夹和项目文件配置
新建App应用
创建应用
python manage.py startapp web
源码
model orm = = = =》 数据库语句
# -*- coding: utf-8 -*-
# @Time : 2019/6/7 22:11
# @Author :
# @Email :
# @File : urls.py
# @Software: PyCharm
from django.db import models
# Create your models here.
from django.contrib.auth.models import AbstractUser
class UserInfo(AbstractUser):
"""
用户信息
"""
nid = models.AutoField(primary_key=True)
telephone = models.CharField(max_length=11, null=True, unique=True)
avatar = models.FileField(upload_to='avatars/', default="avatars/default.png")
create_time = models.DateTimeField(verbose_name='创建时间', auto_now_add=True)
blog = models.OneToOneField(to='Blog', to_field='nid', null=True, on_delete=models.CASCADE)
def __str__(self):
return self.username
class Meta:
verbose_name_plural='用户表'
class Blog(models.Model):
"""
博客信息
"""
nid = models.AutoField(primary_key=True)
title = models.CharField(verbose_name='个人博客标题', max_length=64)
site_name = models.CharField(verbose_name='站点名称', max_length=64)
theme = models.CharField(verbose_name='博客主题', max_length=32)
def __str__(self):
return self.title
class Meta:
verbose_name_plural='博客信息表'
class Category(models.Model):
"""
博主个人文章分类表
"""
nid = models.AutoField(primary_key=True)
title = models.CharField(verbose_name='分类标题', max_length=32)
blog = models.ForeignKey(verbose_name='所属博客', to='Blog', to_field='nid', on_delete=models.CASCADE)
def __str__(self):
return self.title
class Meta:
verbose_name_plural='博主文章表'
class Tag(models.Model):
nid = models.AutoField(primary_key=True)
title = models.CharField(verbose_name='标签名称', max_length=32)
blog = models.ForeignKey(verbose_name='所属博客', to='Blog', to_field='nid', on_delete=models.CASCADE)
def __str__(self):
return self.title
class Meta:
verbose_name_plural='标签表'
class Article(models.Model):
nid = models.AutoField(primary_key=True)
title = models.CharField(max_length=50, verbose_name&#