# myblog **Repository Path**: peter-lyr/myblog ## Basic Information - **Project Name**: myblog - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-02-02 - **Last Updated**: 2021-01-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: Django ## README [TOC] # 项目说明 ## 功能 每个人的笔记,总结,分享……只要能够给大家带来干货的都可以。 登录了的用户可以评论,点赞,否则只能阅读文章。 不能添加好友,不能收藏文章。 ## 建站流程 ### 创建项目和应用 ### 设计路由 #### 设计表 | 路由 | 说明 | | :--: | ---- | | / | 我的首页 | | /login | 登录页面 | | /register | 注册页面 | | /xxx | xxx用户的首页 | | /xxx/yyy | xxx用户的yyy文章的展示页面 | | /yyy | 我的yyy文章的展示页面 | | /write | 我写文章的页面 | | /xxx/write | xxx用户写文章的页面 | #### 说明 1. 用户名不能为login、register、write; 2. 我的文章标题不能为用户名、write; 3. 用户的标文章题不能为write; #### 结构 路由主要分为**主**页面、**登录注册**页面和**写文章**页面。 1. 文章展示页面(包括用户主页)是最丰富的,登录的用户除了可以阅读(**查询**)外,还可以**删除**文章。 2. 登录注册页面比较单一,就是增加用户的增删改操作权限的。 3. 写文章页面除了**增加**文章外,还可以**修改**文章。 #### 路由分析 ##### `/aaa/bbb` ```python if aaa == '某用户': if bbb == 'write': if '该用户已登录': '''写文章''' else: '''登录页面''' elif bbb == '该用户的某篇文章': '''展示该篇文章''' else: '''返回该用户首页:/aaa''' ``` ##### `/aaa` ```python # 主要负责登录注册 if aaa in ['login', 'register']: if '已经有用户已经登录': '''跳转到已登录用户的首页''' else: '''登录注册页面''' if aaa == 'login': '''登录,成功后跳转到用户首页''' elif aaa == 'register': '''注册,成功后跳转到登录页面''' elif aaa == 'write': if '我已经登录': '''写文章''' elif '我未登录': '''登录页面''' if '登录的是别的用户': '''跳转到该用户的首页''' elif '登录的是别的用户': '''跳转到写文章页面''' else: if 'aaa是我的某篇文章的标题': '''展示该文章''' else: '''跳转到首页:/''' ``` #### 路由分配 ##### `/` 我的主页面 所有人都可以访问 ##### `/login` ```doc 登录 会判断是否已登录,如果已登录,则跳转到该用户的首页。 ``` ##### `/register` ```doc 注册 会判断是否已登录,如果已登录,则弹出提示框,提示退出登录后再注册。 ``` ##### `/write` ```doc 我的写文章页面 如果未登录,则无法找到该页面 别的用户登录了也无法找到该页面 ``` ##### `/xxx` ```doc 用户主页面 所有人都可以访问 ``` ##### `/yyy` ```doc 我的某篇具体文章 所有人都可以访问 ``` ##### `/xxx/write` ```doc 用户的写文章页面 如果未登录,则跳转到登录页面,带上该用户名 ``` ##### `/xxx/yyy` ```doc 用户的某篇具体文章 所有人都可以访问 ``` #### 路由顺序 1. / 2. /login 3. /register 4. /write 5. /[^/]+ > 负责处理我的某篇文章或者其他用户的主页 6. /[^/]+/write 7. /[^/]+/[^/]+ ### 设计模型 #### 模型 1. 用户表 2. 分类表 3. 标签表 4. 文章表 5. 评论表 #### 应用 1. 用来处理前四个表 2. 用来处理评论表 ### 设计模板 #### 基础模板 1. 顶部导航栏 2. 右侧文章列表、中间文章内容区域、左侧文章目录 3. 底部导航栏 其中顶部和底部导航栏是三个页面都有的,而中间的三个区域是阅读文章时有的,登录注册时,只需要用到文章内容区域,写文章时需要占据中间的三个区域。 所以基础模板: ... ### 写文章 选择标签或者增加标签 选择分类或者增加分类 git repo: myblog/liudp/liudp/nginx_default.conf my website: /etc/nginx/sites-available/default