本文讲述博客系统中的部分功能,上课学习时间是两天半,自己第一次试敲整个项目要4个多小时------
下面主要说一下项目逻辑:
1.新建Django项目,配置setting.py文件中的数据库,语言,时区等,分发users子路由,配置好主子路由
2.为了学习内部用户表的扩充,我们可以在model里扩充用户表,注意:类要继承AbstractorUser,setting中要加入一句代码AUTH_USER_MODEL='应用名.表类名',示例如下:
from django.db import models
from datetime import datetime
from django.contrib.auth.models import AbstractUser
# Create your models here.
class UserDetail(AbstractUser):
nick_name = models.CharField(max_length=30, null=True, blank=True, verbose_name='用户昵称')
add_time = models.DateTimeField(default=datetime.now, verbose_name='添加时间')
def __str__(self):
return self.username
class Meta:
verbose_name = '用户信息'
verbose_name_plural = verbose_name
3.model设置好,迁移同步
4.首页:urls配置路由,users下的views里写视图,只需返回主页页面即可,这里会牵扯到页面的导入和继承,别忘了新建static目录,setting中要加入一句STATICFILES_DIRS
5.注册:就是通过页面中输入,后台中获取值,然后新建用户对象,将值存入表中的过程
6.登录:就是通过页面输入,后台匹配用户表的过程
7.欢迎退出和注册登录的切换
8.新建应用article文章
9.新建文章信息表,文章类型表-----类型和文章是一对多的关系
10.首页文章列表显示,分页----这里会有图片的显示,setting中要加入两句路径和一个media处理器
11.排行榜:order_by
12.文章归档:dates,显示,点击,分页处理
13.标签云:新建标签表和标签文章关系表,关系表是多对多之间的中间表,显示,点击,分页处理
14.文章详情页:显示文章信息,右侧排行榜等的处理,评论信息的显示,新建评论内容表,联系文章和作者,评论的添加,浏览量和评论量的加一
15.发表文章:获取用户输入的信息,后台添加到数据库,这里会有图片的上传,注意input用file类型,form中要加enctype
16.点赞功能:ajax实现不刷新页面使页面变化
具体的项目文件上传到我的资源中了-------------------------------------------------------------