python第一百三十天 ---简单的BBS论坛
简单的BBS论坛 实现功能
git仓库地址:https://github.com/uge3/BBS
1、整体参考“抽屉新热榜” + “博客园”
2、实现不同论坛版块
3、帖子列表展示
4、个人博客主页
5、个人博客标签、分类、时间 筛选
6、帖子评论数、点赞数展示
7、允许登录用户发贴、评论、点赞
8、允许上传文件(个人头像)
9、可进行多级评论
10、个人博客后台管理(创建\编辑\删除文章,个人分类\个人标签管理,可以选择个人博客主题,)
11, 通过admin模块可以管理(添加\删除)论坛版动,管理博客的主题.
说明:
启用前:请先通过admin模块进行版块,博客主题的添加(当前 admin模块 用户名:admin 密码:adminadmin
版块:python go liunx 博客主题: 3个 )
程序结构:
BBS/#主目录
|- - -BBS/# 主程序目录
| |- - -init.py
| |- - -settings#配置文件
| |- - -urls.py#主路由
| |- - -wsgi.py#WSIG规范文件
|
|
|- - -backend/#个人博客后台程序目录
| |- - -init.py
| |- - -admin.py
| |- - -apps.py
| |- - -auth/#登陆装饰函数目录
| | |- - -auth.py #登陆装饰函数
| |
| |- - -forms/#表单验证函数目录
| | |- - -article.py #表单验证函数
| |
| |- - -migrations
| | |- - -init.py
| |
| |- - -models.py
| |
| |- - -templatetags/#注册为模块 load
| | |- - -serach.py#条件搜索生成
| |
| |- - -tests.py
| |- - -urls.py#后台路由
| |
| |- - -views/#视图函数
| | |- - -user.py#逻辑函数
|
|- - -db.sqlite3/Django自带数据库
|- - -manage.py#管理Django程序
|- - -Monaco.ttf#字体库
|
|- - -repository/#数据表结构目录
| |- - -init.py
| |- - -admin.py# django 管理注册
| |- - -apps.py
| |- - -migrations/#数据库操作日志
| |- - -models.py#表结构
| |- - -tests.py#单元测试
|
|
|- - -static/#静态文件目录
| |- - -css/# css文件目录
| |- - -imgs/# 图片文件目录
| |- - -js/#js文件目录
| |- - -plugins/#前端框架文件目录
|
|- - -templates/#HTML文件目录
| |- - -backend_add_article.html#增加文章页面
| |- - -backend_article.html#个人文章页面
| |- - -backend_base_info.html#个人信息管理页面
| |- - -backend_category.html#个人分类管理页面
| |- - -backend_edit_article.html#个人文章编辑页面
| |- - -backend_index.html#个人管理主页面
| |- - -backend_no_article.html#个人无文章显示页面
| |- - -backend_tag.html#个人标签管理页面
| |- - -home.html#个人博客主页面
| |- - -home_detail.html#个人博客文章详细页面
| |- - -home_title_list.html#个人博客文章分类页面
| |- - -include/#include 目录(可包含)
| | |- - -header.html#顶部菜单模板
| |- - -index.html#主页面
| |- - -login.html#登陆页面
| |
| |- - -master/#母板目录
| | |- - -backend_layout.html#后台页面模板
| | |- - -home_layout.html#显示页面模板
| |- - -register.html#注册页面
|
|- - -utils/#自定义插件目录
| |- - -check_code.py#验证码
| |- - -pagination.py#分页
| |- - -xss.py#XSS过滤
|- - -web/#WEB主页面服务端程序目录
| |- - -init.py
| |- - -admin.py
| |- - -apps.py
| |- - -forms/#表单验证函数
| | |- - -account.py#登陆相关
| | |- - -base.py#表单相关
| |- - -migrations/#
| |- - -tests.py#
| |- - -urls.py#对应关系 (路由)
| |- - -views/##视图函数
| | |- - -init.py
| | |- - -account.py#登陆相关函数
| | |- - -home.py#主页面相关函数
| |
|
|- - -README
python第一百三十天 ---简单的BBS论坛的更多相关文章
- 第一百三十九节,JavaScript,封装库--CSS选择器
JavaScript,封装库--修改元素选择器 就是将构造库函数修改成元素选择器,像css那样,输入#xxx .xxx xxx (获取指定id下的指定class下的指定标签元素) 修改后的基础库 / ...
- 第一百三十节,JavaScript,封装库--连缀
JavaScript,封装库--连缀 学习要点: 1.连缀介绍 2.改写库对象 本章我们重点来介绍,在调用库的时候,我们需要能够在前台调用的时候可以同时设置多个操作,比如设置CSS,设置innerHT ...
- 第一百三十八节,JavaScript,封装库--插件
JavaScript,封装库--插件 库主要是用来封装一般JavaScript的常规操作代码,而拖拽这种特效代码属于功能性代码,并不是必须的,所以这种类型的代码,我们建议另外封装,在需要的时候作为插件 ...
- 第一百三十六节,JavaScript,封装库--事件绑定
JavaScript,封装库--事件绑定 在函数库添加两个函数 添加事件绑定函数 删除事件绑定函数 添加事件绑定函数 /** addEvent()函数库函数,跨浏览器添加事件绑定,注意:传入事件名称时 ...
- 第一百三十五节,JavaScript,封装库--拖拽
JavaScript,封装库--拖拽 封装库新增1个拖拽方法 /** tuo_zhuai()方法,将一个弹窗元素实现拖拽功能 * 注意:一般需要在css文件将元素里的某一个区块光标设置成提示可以拖拽, ...
- 第一百三十四节,JavaScript,封装库--遮罩锁屏
JavaScript,封装库--遮罩锁屏 封装库新增1个方法 /** zhe_zhao_suo_ping()方法,将一个区块元素设置成遮罩锁屏区块 * 注意:一般需要在css文件将元素设置成隐藏 ** ...
- 第一百三十三节,JavaScript,封装库--弹出登录框
JavaScript,封装库--弹出登录框 封装库,增加了两个方法 yuan_su_ju_zhong()方法,将获取到的区块元素居中到页面,chuang_kou_shi_jian()方法,浏览器窗口事 ...
- python第一百六十九天,第十九周作业
FIRSTCRM 学员管理开发需求: 1.分讲师\学员\课程顾问角色, 2.学员可以属于多个班级,学员成绩按课程分别统计 3.每个班级至少包含一个或多个讲师 4.一个学员要有状态转化的过程 ,比如未报 ...
- leecode第一百三十六题(只出现一次的数字)
class Solution { public: int singleNumber(vector<int>& nums) { int len=nums.size(); ; ;i&l ...
随机推荐
- 配置babel
配置babel ECMAScript的版本,每年都会定期举行会议,发布各种标准,当前版本到了2019,但大部分人使用的浏览器,都可以支持es2015,也就是es6,要等到大部分浏览器都支持到最新版本, ...
- leetcode — unique-paths
import java.util.Arrays; /** * Source : https://oj.leetcode.com/problems/unique-paths/ * * * A robot ...
- Linux下FTP虚拟账号环境部署总结
vsftp的用户有三种类型:匿名用户.系统用户.虚拟用户.1)匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous.2)本地用户登录:使用系统用户登录,在/etc/passwd中 ...
- MySQL SQL语句执行顺序
MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FROM操作,最后执行的是LIMIT操作.其中每一个操作都会产生一张虚拟的表,这个虚拟的表作为一个处理的输入,只是这些虚拟的表对用户来 ...
- samba企业级实战应用详解-技术流ken
1.简介 Samba是一套使用SMB(Server Message Block)协议的应用程序, 通过支持这个协议, Samba允许Linux服务器与Windows系统之间进行通信,使跨平台的互访成为 ...
- 安装并使用Jupyter Notebook
Jupyter Notebook是一个交互式笔记本,支持运行 40 多种编程语言.笔者在写博客文章时,常常需要贴代码,一贴就是一大堆代码,这样不便于读者阅读,而使用Jupyter Notebook ...
- 第一册:lesson5-6.
原文: A:Good morning. B:Good morning,Mr.A. A:This is Miss C. C is a new student.She is Frech. C ,this ...
- asp.net-基础-20180321
C#与.NET的关系 C#不是语言,.net是平台.
- SpringBoot的Autowierd失败
通常是以下几种可能: 1.没有加@Service注解,或者是这个bean没有放在标注了@Configuration这个注解的类下. 2.SpringBoot启动类没有开启扫描 @ComponentSc ...
- php的TS和NTS的区别
ts(Thread-Safety)即线程安全,多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他 线程不能进行访问直到该线程读取完,其他线程才可使用.不会出现数据不一致或者数 ...