《基于python爱车分享交流网站设计与开发.docx》由会员分享,可在线阅读,更多相关《基于python爱车分享交流网站设计与开发.docx(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于python爱车分享交流网站设计与开发 基于python的爱车共享沟通网站设计与开发 网站系统 摘 要 设计开发该爱车共享沟通网站系统主要是应用于有关汽车领域的网上社交,为用户供应信息化、数字化的共享沟通平台,满意用户在此网站上发出对自己爱车或其中一款汽车的独有见解的声音并使之转变为一篇车评文章,共享出去让更多人看到和进行评论沟通。 当今,汽车可以说已经成为我们生活中不行或缺的出行交通工具,这些年汽车行业的迅猛发展,现在市面上的汽车种类数不胜数,人们对汽车的了解和相识除了到传统的到实体店里亲自体验实现,也能够通过互联网阅读一些车主用车的真实感受和有关汽车评价的文章,可在肯定程度上提高人们对
2、汽车的相识以及解决工作忙没有时间亲自去实体店看车的苦恼。因此,开发一个适合大众的、上手简洁和兼容性好的能够共享汽车学问或评价或新闻资讯类文章的沟通网站很有意义。在系统开发的过程中,注意系统的兼容性、可维护性以及交互性,网站系统主要供应多用户在线写文章和评论,后台管理员发布一些汽车新闻资讯以及对用户文章进行s审核管理的平台。在开发工具上,运用热门的python语言、MySQL数据库以及Django框架作为开发工具。关键词:爱车共享沟通网站系统;MySQL数据库;Django框架 Car sharing exchange website system Abstract Design and dev
3、elop the car sharing website system is mainly used in the automotive field of online social networking, to provide users with information and sharing of digital communication platform, to meet the user on the site on your car or the voice of a cars unique views and make it into a car review articles
4、, share out to let more people see and comments. Today, the car can be said to have become indispensable to our life travel transport, in recent years the rapid development of automobile industry, now on the market of car types, the recognition and understanding of the car in addition to the traditi
5、onal to the stores to experience personally, can also through the Internet to browse some car owners of true feelings and about car evaluation, and can improve peoples understanding of the car to a certain extent, and solve the work busy have no time to go to store a car trouble. Therefore, it makes
6、 sense to develop a communication website that is suitable for the public, easy to use and compatible, and can share automobile knowledge or comments or news articles. In the process of system development, pay attention to the compatibility, maintainability and interactivity of the system, the websi
7、te system mainly provides multiple users to write online articles and comments, background administrators to release some automotive news and information and user articles, comments management platform. On the development tools, use the popular python language, MySQL database, and Django framework a
8、s development tools. Key words: Car sharing exchange website system; MySQL Database; The Django framework 目 录 第1章 绪论 3 1.1 系统开发的背景和目标 3 1.1.1 系统开发的背景 3 1.1.2 系统开发的目标 3 1.2 系统的主要功能和特点 3 1.3 设计开发的方法和工具的选择 4 第2章 系统规划 5 2.1 初步需求分析 5 2.2 总体结构 5 2.2.1 前台功能 5 2.2.2 后台功能 6 2.3 可行性探讨 7 第3章 系统分析 8 3.1 功能分析 8
9、3.1.1系统参加者 8 3.1.2系统用例图 9 3.1.3 用例规约 9 3.2 概念数据建模和对象关系建模 18 3.3 动态建模 20 3.3.1 依次图 20 3.3.2 通信图 24 3.3.3 系统分析类图 27 3.3.4 活动图 27 3.3.5 状态图 29 第4章 系统设计 30 4.1 总体设计 30 4.2 数据库设计 31 4.3 I/O设计 35 第5章 系统实现 38 5.1 数据库运用 38 5.1.1 MySQL 38 5.1.2 Navicat Premium介绍 38 5.1.3数据库连接 39 5.1.4 Gulp 39 5.2 系统测试 39 总结
10、55 参考文献 57 谢辞 58 第1章 绪论 1.1 系统开发的背景和目标 1.1.1 系统开发的背景 在互联网时代之下,有很多像以前比较流行地通过报纸、期刊或电视上来获得资讯的方式已经起先敏捷改变成通过上网获得想要的资讯。同样,常常关注汽车资讯且想要共享自己用车、车评或其他想法的需求除了可以通过以上传统的方式来得以满意,还可以通过现今已经较为成熟的互联网技术来开发一个线上共享沟通的网站系统来满意他们的需求。因此,爱车共享沟通网站系统能为那些喜爱写一些有关汽车信息的文章的人供应通道来将其文章展示出去,让更多人能够看到并且进行评论沟通,一方面能够拉近一群爱车人的距离,降低了他们沟通的成本。另一
11、方面,能便利更多人阅读到汽车资讯和了解到对汽车的不同看法。1.1.2 系统开发的目标 本次将设计一个共享且能沟通的爱车族共享沟通网站系统,一方面能够提升用户阅读汽车资讯和产品的交互体验感,另一方面为更多爱车的人供应门槛更低的沟通平台和发声途径,最重要是简化上手的流程,提高获得汽车信息的效率。 同时,通过访问这个爱车共享沟通网站,不管是第一次访客还是喜爱关注汽车信息网的用户都可以快速阅读到官方供应的最新的汽车资讯和汽车产品评测文章,布局美观有序地呈现各种爱车族喜闻乐见的汽车文章和琳琅满目的汽车品牌,能够提高用户访问的体验度,降低用户获得汽车信息操作难度。此外,在该爱车共享沟通网站中参加文章评论的
12、过程,网站管理员的定时和不定时地监查下,可以促进广阔用户之间的沟通,各种想法见解的碰撞摩擦能够汇聚一帮志同道合的人。 1.2 系统的主要功能和特点 1.2.1 系统主要功能概述 系统的主要功能是通过以下几个功能模块来实现的。详细的设计过程如下: (1)系统登录:该模块负责将用户分为一般用户、管理员来实现用户权限的管理。 (2)系统注册:该模块是对用户个人信息进行认证和存储于服务器中,并通过发送手机验证码进行身份验证完成整个注册流程。(3)文章和资讯信息发布模块主要包括: a.汽车资讯发布(这里的资讯信息主要是管理员在后台进行发布汽车新闻):该模块主要是负责在资讯分类栏目列出全部不同类别的汽车新
13、闻信息,包括缩略图、标题、描述、类别、作者、发布时间,每一条新闻的缩略图和标题处都被做成一个超链接,点击它们就能跳转到具体页面进行资讯查看阅读。b.文章信息发布(这里的文章信息是一般用户进行注册认证并登录后进行发布与汽车话题有关的可带有图片、标题、描述、正文内容等信息):该模块主要是一般用户提交自己的文章作品,经过后台管理员审核通过后方可展示在该网站的文章动态页面当中,其他用户也可以点击进去进行阅读。(4)文章点赞和评论模块主要包括: a.文章点赞(这个部分是全部用户在对某一篇文章阅读过程中可以对该篇文章进行点赞表示认可或不喜爱表示不认可两种操作):该模块是向只有注册了的且已经登录的用户开放的
14、功能,在没有登录的状态下只能阅读不行点赞操作。b.文章评论(这里的评论是用户对文章写的评论内容):该模块也是只能向登录后的用户开发操作,用户写下评论后将在文章作者个人中心处接收评论信息。文章审核和评论核查模块主要包括: 文章审核:该模块是用户写完文章并点击发布后提交到管理员后台文章审核处理等待管理员对其内容进行审查,通过审查之后的文章方可显示在文章动态列表里,没有通过的文章将被退回,不能正常显示在公共区域。c.评论管理模块主要包括: d.评论记录管理:该模块是一般用户在个人中心评论管理处对全部对文章评论的内容进行查看和删除操作。1.3 设计开发的方法和工具的选择 在开发该系统运用的是B/S模式
15、,采纳的是面对对象分析与设计的方法,对系统规划、需求分析、系统分析、系统设计以及系统实现和系统测试等过程进行开展。在工具的选择上是依据不同阶段来运用不同的工具对系统进行开发。在系统设计阶段,将用到processOn进行设计图的绘制,在系统实现阶段,前端页面设计用到的是Bootstrap和Layui框架,后端运用的是Django框架和MySQL数据库。Django是一个开放源代码的Web应用框架,由Python语言编写而来。采纳了MTV的框架模式,即模型M,视图V和模版T。模型层负责处理与数据相关的全部事务,模版层负责处理数据呈现,视图层负责存取模型及调取恰当模板的相关逻辑。Bootstrap主
16、要是以三大前端基本语言HTML、CSS、JavaScript开发而来的具有搭建简洁、布局简洁直观、性能强悍的前端开源框架,其目的是让Web开发更加便利快速。MySQL是当下最流行的关系型数据库管理系统之一,在Web开发应用上运用较为普遍,深受广阔开发者的宠爱,在其强大的系统特性和存储引擎的加持下MySQL对数据的处理和速度有很高的敏捷性。 第2章 系统规划 2.1 初步需求分析 1.系统概述 对于爱关注汽车新闻资讯的而言,虽然现今已经有一些功能强大的汽车资讯平台可以供应这方面的信息,但是页面太杂乱和功能太过冗余,许多都功能都很难用不上的问题。因此,开发一个侧重汽车文章的共享沟通的网站系统就是为
17、了降低用户的运用门槛,让爱车的人同样能获得到汽车新闻资讯,还能够发表文章,提高他们完成共享沟通的效率。 2.系统对象 系统对象有:用户、网站管理员 3.系统功能 (1)用户:文章的撰写、修改、删除和发布,文章标签管理,文章评论、点赞和保藏,查看评论和删除评论 (2)管理员:审核用户的文章、发布网站新闻和轮播图,新闻分类管理 4.系统对象行为 (1)用户访问网站进行注册,完成注册后输入账号密码登录系统,用户可以对文章进行发表评论、点赞和保藏,也可以编写文章进行提交,等待管理员进行审核,还能管理自己的文章、评论信息。 (2)管理员通过访问网站进行登录之后,管理员拥有审核用户文章,网站新闻模块、轮播
18、图和新闻分类管理的权限,管理员发布的新闻,审核通过的文章和添加的拥有跳转指定页面的轮播图信息在前台可进行显示。 2.2 总体结构 系统运用Django框架搭建,整体上分为前台和后台两部分。2.2.1 前台功能 (1)登录和退出登录 当用户要写文章或是发表评论、点赞和保藏等操作时,系统会检测用户是否登录,登录时会反馈用户的登录信息是否正确,只有登录之后才有退出登录操作。(2)注册 没有注册的用户只能够阅读网站的文章、新闻和评论,只有完成注册之后,登录系统才能进行对应的权限操作。(3)查看网站资讯 即使没有注册和登录的用户都可以查看网站的新闻、文章以及文章评论信息,新闻资讯和文章可通过点击查看更多
19、进行阅读,查询关键字也可以找到相应的资讯信息。(4)发布文章 用户登录系统后,可在发布文章页面输入文章标题和描述、添加文章标签、上传文章封面以及内容,编写完成后点击发布,系统提示请等待审核。(5)发表评论 用户登录后,在文章详情页面下方评论区域输入评论内容点击马上评论按钮进行发表,评论发表胜利后,用户评论展示区更新。(6)点赞和保藏文章 用户登陆后,在文章详情页面里点击点赞图标或保藏图标对文章进行点赞和保藏,点赞完成后页面点赞数更新,保藏完成后,系统提示可在我的保藏处查看。2.2.2 后台功能 (1)用户文章信息管理 用户能够对已发布或待审核的文章信息进行查看,还能够对文章进行删除操作 (2)
20、评论管理 已登录的用户可以在个人中心的评论管理处查看文章的评论,以及删除评论操作。(3)文章审核处理 管理员对用户写的文章内容进行查看,可选择通过、不通过和删除操作,对文章发布状态信息进行修改。(4)新闻管理 管理员能够添加新闻分类,依据新闻分类发布新闻,对新闻分类和新闻进行修改、删除操作。(5)轮播图管理 管理员对网站轮播图片进行添加、修改、删除操作。(6)保藏管理 用户在个人主页我的保藏处可以查看到保藏的文章,并可以进行删除操作。 2.3 可行性探讨 (1)技术可行性 本网站系统时基于阅读器的Browser/Server(简称B/S)结构,前端页面运用Bootstrap、和Layui框架开
21、发,其兼容性好,编写起来便利简洁,适合本系统偏向于展示性的Web网站开发应用。后端运用Django框架,此框架有较全的文档、内部功能库多和优雅URL编写方式,开发效率较高,数据库则运用熟识运用且语言简洁运用的MySQL数据库作为系统开发,而且都支持windows10操作系统,因此技术时可行的。 (2)社会可行性 本网站主要为喜爱汽车、关注汽车等人群服务的简便、交互感好的沟通共享平台,通过注册后的用户能够在此共享自己对汽车的不同看法和观点,考虑到用户发布的文章言论是否符合法律道德、政治体制等层面,网站管理员会严格审核每个用户的文章内容,做到取其精华去其糟粕,同时也会严加监管到用户的沟通过程中产生
22、的评论信息,肯定禁止不良和违规评论,营造健康良好的网上共享沟通平台,并不会给社会带来政治、经济、法律道德等层面的负面影响,从用户源头上解决问题,做到以沟通促发展、以共享谋华蜜。所以,本网站在社会层面上是可行的。(3)经济可行性 设计开发本系统是基于B/S模式,而且系统编码工具是免费运用的,只须要一台能正常运用的电脑或笔记本即可开发,设备成本较低,而且利用网上开源的框架搭建,开发周期也能够得到缩减,节约时间成本。因此,在经济上是可行的。 第3章 系统分析 3.1 功能分析 3.1.1系统参加者 系统参加者是喜爱上网查看各种汽车资讯和阅读汽车文章并留下评论的用户和对用户文章进行审核、网站资讯进行管
23、理的管理员,也可以是其他一些常常上各种论坛、资讯等网站进行阅读的人。不管是什么样类型的用户,他们都有共同的特点就是每一个人的信息都是独立且唯一,而且每一位访问网站的用户都能够阅读该网站的信息资讯,而且能够发表自己的想法,同时也能够将自己宠爱的东西共享出去,让更多人看到并且能够参加其中的探讨的需求。所以系统主要参加者有:用户、网站管理员两种 图3-1 系统参加者 3.1.2系统用例图 图3-2 系统用例图 3.1.3 用例规约 依据上面对系统参加者初步分析和系统用例图的绘制分析,接下来将对系统核心用例进行编写用例规约 1.登录 表3-1 登录用例规约 用例名称 登录 用例描述 本网站的更多操作须
24、要参加者进行输入账号密码进行登录,该用例页面须要参加者自行点击跳转。 参加者 用户、管理员 层次 海平面 触发器 点击登录按钮 前置条件 用户访问网站 胜利保证 登录页面正常跳转 最低保证 回滚未完成的事务 胜利情节 1. 用户胜利登录网站 扩展 1.a 数据库找不到该用户的信息 1.a.1 系统提示输入的手机号或密码错误 2.a 手机号或密码为空 2.a.1 系统提示请输入手机号码和密码 2.注册 表3-2 注册用例规约 用例名称 注册 用例描述 对运用本站用户的信息进行存储,为用户登录供应信息 参加者 用户 层次 海平面 触发器 点击注册按钮 前置条件 用户访问网站 胜利保证 注册页面正常
25、跳转 最低保证 回滚未完成的事务 胜利情节 1.用户完成注册 扩展 1.a 手机号码位数不对 1.a.1 系统提示输入的手机号码位数不能少于11位或大于11位 1.b 手机号或密码为空 1.b.1 系统提示请输入手机号码和密码 3.发布文章 表3-3 发布文章用例规约 用例名称 发布文章 用例描述 用户填写好标题、描述、内容和上传图片等信息进行文章发布。参加者 用户 层次 海平面 触发器 点击发布文章 前置条件 计算机连接互联网且进行登录 胜利保证 用户登录胜利并访问发布页面 最低保证 回滚未完成的事务 胜利情节 1. 填写文章标题、描述,选择文章分类,添加文章标签 2. 上传文章图片封面 3
26、. 输入文章内容 4. 点击提交 扩展 1.a 文章标题为空 1.a.1 系统提示文章标题必需填写 1.b 描述为空 1.b.1 系统提示描述不能位空 1.c 文章标签未添加 1.c.1 系统提示至少添加一个文章标签 2.a 弹出文件选择框 2.a.1 系统提示选择一张图片文件 4.a. 发布胜利 4.a.1 弹窗提示发布胜利,等待审核 4.发布新闻 表3-4 发布新闻用例规约 用例名称 发布新闻 用例描述 管理员对网站汽车新闻进行添加 参加者 管理员 层次 海平面 触发器 点击发布新闻 前置条件 管理员已经登录 胜利保证 新闻发布页面刷新并提示发布胜利 最低保证 回滚未完成的事务 胜利情节
27、1. 输入新闻内容(标题、描述、内容) 2. 选择新闻分类、标签 3. 上传文章封面缩略图 4. 完成发布 扩展 1.a 输入项留空 1.a.1 弹窗提示必填选项,请重新填写 1.a.2 回滚操作 5.审核文章 表3-5 审核文章用例规约 用例名称 审核文章 用例描述 管理员对用户发布出去前的文章进行审核 参加者 管理员 层次 海平面 触发器 管理员点击审核文章按钮 前置条件 管理员登录并进入系统后台 胜利保证 系统从数据库读取到用户提交的文章列表 主要胜利情节 1. 系统读取到用户文章列表并显示 2. 对文章完成审核操作 3. 文章状态状态变更 扩展 1.a 文章列表显示位空 1.a.1 系
28、统提示未有提交的文章 6.发布文章 表3-6 发布文章用例规约 用例名称 发布文章 用例描述 用户填写好标题、描述、内容和上传文章封面图片等信息进行文章发布。参加者 用户 层次 海平面 触发器 点击发布文章 前置条件 用户登录并进入个人中心 胜利保证 用户胜利访问发布文章页面 最低保证 回滚未完成的事务 胜利情节 1.填写文章标题、描述,选择文章分类,添加文章标签 2.上传文章图片封面 3.输入文章内容 4.点击提交 扩展 1.a 文章标题为空 1.a.1 系统提示文章标题必需填写 1.b 描述为空 1.b.1 系统提示描述不能位空 1.c 文章标签未添加 1.c.1 系统提示至少添加一个文章
29、标签 2.a 弹出文件选择框 2.a.1 系统提示选择一张图片文件 4.a. 发布胜利 4.a.1 弹窗提示发布胜利,等待审核 7.阅读文章 表3-7 阅读文章用例规约 用例名称 阅读文章 用例描述 用户在网站上查看某一篇文章详情 参加者 用户 层次 海平面 触发器 点击文章图片或标题 前置条件 胜利访问网站 胜利保证 跳转至文章详情页面 最低保证 回滚未完成事务操作 胜利情节 1. 用户检索文章 2. 用户恳求阅读某篇文章 3. 系统跳转至详情页面 扩展 1.a 用户选择文章分类 1.a.1 选择某一种分类 1.a.2 页面文章刷新,显示该分类的文章 1.b 用户恳求更多文章 1.b.1 用
30、户点击查看更多 1.b.2 系统显示更多篇文章 8.点赞文章 表3-8 点赞文章用例规约 用例名称 点赞文章 用例描述 用户对在阅读文章过程中可以对该文章进行点赞以示支持和确定 参加者 用户 层次 海平面 触发器 点击点赞按钮 前置条件 用户已经登录 胜利保证 页面点赞数更新 最低保证 回滚未完成的事务 胜利情节 1. 鼠标点击“点赞”图标 2. 页面点赞数量更新 3. 点赞完成 扩展 1.a 点赞图标不显示 1.a.1 重新加载页面 1.b 点赞没有效果 1.b.1 系统提示用户请先登录 2.a 点赞数更新异样 2.a.1 重新刷新页面 9.保藏文章 表3-9 保藏文章用例规约 用例名称 保
31、藏文章 用例描述 将文章添加至我的保藏列表 参加者 用户 层次 海平面 触发器 点击“保藏”图标 前置条件 用户已经完成注册及登录 胜利保证 用户已经登录 最低保证 回滚未完成事务 胜利情节 1.用户恳求查看文章详情页面 2.系统跳转到详情页面 3.用户点击保藏 4.系统提示保藏胜利 5.保藏的文章显示在保藏列表里 扩展 1.a 恳求查看失败 1.a.1 系统提示错误信息,回滚上一步操作 2.a 跳转失败 2.a.1 文章可能被突然删除,回滚上一步操作,重新加载页面 10.查看保藏文章 表3-10 查看保藏用例规约 用例名称 查看保藏 用例描述 用户查看保藏列表里的文章 参加者 用户 层次 海
32、平面 触发器 点击我的保藏 前置条件 用户已经登录 胜利保证 用户有保藏过文章 最低保证 回滚未完成事务 胜利情节 1. 系统读取数据库表数据显示保藏的文章列表 2. 点击文章进入查看页面 扩展 1.a 数据库读取不到数据 1.a.1 系统提示用户还未保藏过文章 1.a.2 保藏页面显示为空 2.a 跳转页面失败 2.a.1 系统提示404,文章数据丢失,请重新加载 11.发表评论 表3-11 发表评论用例规约 用例名称 发表评论 用例描述 用户在文章下方评论栏参加评论 参加者 用户 层次 海平面 触发器 进入文章详情页面 前置条件 用户已经登录 胜利保证 评论页面显示评论信息 最低保证 回滚
33、未完成事务操作 胜利情节 1. 用户输入评论内容 2. 点击发表评论 3. 页面重新加载 4. 评论列表更新 扩展 2.a 未输入内容 2.a.1 系统提示内容不能为空 3.a 页面加载超时 3.a.1 提示404错误代码,页面丢失 3.a.2 重新刷新页面 4.a 评论列表加载失败 4.a.1 刷新页面重新加载数据 12.评论管理 表3-12 评论管理用例规约 用例名称 评论管理 用例描述 用户对评论信息进行查、删操作 参加者 用户 层次 海平面 触发器 点击评论管理 前置条件 用户进入个人中心 胜利保证 进入评论管理页面 最低保证 回滚未完成事务操作 胜利情节 1. 恳求数据库获得评论信息
34、 2. 页面显示全部评论信息 3. 对评论进行删除操作 扩展 1.a 获得数据失败 1.a.1 系统显示暂无评论信息 3.a 评论删除确认 3.a.1 系统提示确认删除操作 3.a.2 完成删除,页面重新加载数据 13.轮播图管理 表3-13 轮播图管理用例规约 用例名称 轮播图管理 用例描述 管理员对轮播图片进行添加、修改和删除操作 参加者 管理员 层次 海平面 触发器 点击轮播图模块 前置条件 管理员登录后台系统 胜利保证 轮播图操作页面胜利显示 最低保证 回滚未完成事务操作 胜利情节 1. 胜利添加一张轮播图 2. 保存修改轮播图信息 3. 删除一张轮播图 扩展 1.a 添加失败 1.a
35、.1 系统提示添加轮播图不能超过6张 3.a 删除确认 3.a.1 弹窗提示确认操作 3.a.2 执行删除,页面重新加载 14.用户信息管理 表3-13 用户信息管理用例规约 用例名称 用户信息管理 用例描述 管理员对用户信息进行修改和删除操作 参加者 管理员 层次 海平面 触发器 登录用户管理后台 前置条件 管理员登录后台系统 胜利保证 用户管理页面胜利显示 最低保证 回滚未完成事务操作 胜利情节 1.选择一个用户并查看具体信息 2.修改用户信息 3.保存修改内容 4.选择删除一个用户信息 5.确认删除操作 扩展 3.a 修改失败 3.a.1 回滚操作,页面重新加载 5.a 删除失败 4.a
36、.1 回滚操作,提示删除失败,重新加载页面 1.2 概念数据建模和对象关系建模 图3-3 发布文章及新闻类图 图3-4 文章评论类图 图3-5 文章点赞类图 图3-6 文章保藏类图 类图的关系约束如下: 1.用户与文章是一对多的关系,一个用户可以发布多篇文章 2.管理员与文章发布记录时一对多的关系,一个管理员负责审核多篇文章 3.文章与标签是多对多的关系,一篇文章可以有多个标签,一个标签可以被多篇文章运用 4.管理员与新闻是一对多的关系,一个管理员可以发布多篇新闻 5.分类与新闻是一对多的关系,一个分类可以对应多篇新闻 6.用户与文章评论是多对多的关系,一个用户可以对多篇文章评论,一篇文章可以
37、被多个用户评论 7.用户与文章保藏是多对多的关系,一个用户可以保藏多篇文章,一篇文章可以被多个用户保藏 8.用户与文章点赞是多对多的关系,一个用户可以点赞多篇文章,一篇文章可以被多个用户点赞 类图转化为对象关系模型为: User(u_id,username,password,gender,email,phone,is_superuser) Article(a_id,title,desc,tag,thumbnail,content,pub_time) Tag(tag_id,name) Record(u_id,a_id,pub_time,status) Admin(m_id,username,pa
38、ssword,email,phone,is_superuser,gender) News(n_id,title,desc,category,thumbnail,content) Category(cate_id,name) Like(lk_id,u_id,a_id,date) Comment(ct_id,u_id,a_id,content,pub_date) Collect(clt_id,u_id,a_id,date) 3.3 动态建模 3.3.1 依次图 (1)用户或管理员登录依次图: 图3-7 用户或管理员登录依次图 (2)用户注册依次图: 图3-8 用户注册依次图 (3)发布文章依次图:
39、 图3-9 发布文章依次图 (4)发布新闻依次图: 图3-10 发布新闻依次图 (5)发表评论依次图: 图3-11 发表评论依次图 (6)点赞文章依次图: 图3-12 点赞文章依次图 (7)保藏文章依次图: 图3-13 保藏文章依次图 (8)审核文章依次图 图3-14 审核文章依次图 3.3.2 通信图 (1)用户和管理员登录通信图 图3-15 用户和管理员登录通信图 (2)注册通信图 图3-16 注册通信图 (3)发布文章通信图 图3-17 发布文章通信图 (4)发布新闻通信图 图3-18 发布新闻通信图 (5)发表评论通信图 图3-19 发表评论通信图 (6)点赞文章通信图 图3-20 点
40、赞文章通信图 (7)保藏文章通信图 图3-21 保藏文章通信图 (8)审核文章通信图 图3-22 审核文章通信图 3.3.3 系统分析类图 图3-23 发布管理系统分析类图 3.3.4 活动图 (1)发表评论活动图 图3-24 用户发表评论活动图 (2)发布文章活动图 图3-25 发布文章活动图 如图3-24发表评论活动图所示,用户在发表评论时,须要经过系统验证用户是否登录,只有登录后才能进行发表评论,评论发表胜利后,被评论文章拥有者的用户可以查看到评论信息。图3-25发布文章活动图所描述的活动是用户在发布文章的过程中,完成发布文章操作后须要等待管理员对文章的审核流程,用户可以查看审核结果跟踪
41、文章审核动态信息,通过的将会由系统自动公开出去,没有通过的则视为发布失败,无法公开。 3.3.5 状态图 文章提交后在系统中等待审核的状态图 图3-26 文章状体图 状态图说明: 1.待审核文章:刚发布的文章,状态为待审核,暂不公开 2.已通过:文章内容通过,状态为已通过,即可以公开出去 3.发布:公开发布状态 4.未通过:文章内容没有通过,状态为未通过,即未发布状态 第4章 系统设计 4.1 总体设计 基于Django框架的爱车共享沟通网站系统总体功能图如下: 图4-1 系统功能图 4.2 数据库设计 表4-1 用户信息表User 字段名 描述 说明 类型 备注 U_id 用户id 主键 v
42、archar 每个用户唯一标记 Username 用户名 varchar Password 密码 varchar Email 邮箱 varchar Phone 手机号 最大长度为11 int aboutme 介绍 varchar Gender 性别 varchar 默认值为未设置 Is_superuser 管理员身份 int 1为管理员,0为一般用户 表4-2 文章信息表Article 字段名 描述 说明 类型 备注 A_Id 文章id 主键 int 每一篇文章的唯一标记 Title 标题 varchar Content 内容 varchar Author 作者 外键 varchar 参照用户
43、信息表 Pub_time 时间 varchar Desc 描述 varchar Status 状态 varchar 默认待审核状态 Tag_id 标签 外键 int 参照文章分类表 表4-3 评论信息表Comment 字段名 描述 说明 类型 备注 C_id 评论id 主键 varchar 评论的唯一标识 User_id 用户ID 外键 varchar 参照用户表 Article_Id 文章Id 外键 varchar 参照文章表 Content 评论内容 varchar Pub_time 评论日期 varchar Status 评论状态 int 表4-4 汽车新闻表News 字段名 描述 说明
44、 类型 备注 Id 新闻id 主键 int 新闻的唯一标识 Title 标题 varchar Desc 描述 varchar Pub_time 发布时间 varchar Content 内容 varchar Category 分类 外键 int 参照新闻分类表 User_id 发布者id 外键 varchar 参照用户信息表 表4-5 文章标签表Tag 字段名 描述 说明 类型 备注 Id 标签id 主键 int 标签的唯一标记 User_Id 用id Int tag 标签名 int 表4-6 点赞信息表Like 字段名 描述 说明 类型 备注 Id 点赞表id 主键 int 每一个用户点赞的
45、唯一标记 User_id 用户id 外键 int 参照用户表 Article_Id 文章id 外键 int 参照文章表 Like_date 点赞日期 varchar Like 点赞状态 int 表4-7 文章分类表Category 字段名 描述 说明 类型 备注 Id 分类ID 主键 int 每一个分类的唯一标记 Name 分类名 varchar Article_id 文章ID 外键 int 参照文章表 表4-8 保藏信息表Collect 字段名 描述 说明 类型 备注 Id 保藏ID 主键 int 每一条审核记录的唯一标记 Article_id 文章ID 外键 int 外键-参照文章表 Us
46、er_id 用户ID 外键 int 外键-参照用户表 表4-9 轮播图信息表Collect 字段名 描述 说明 类型 备注 Id 轮播图id 主键 int 每张轮播图的唯一标记 Priority 优先级 轮播排序 int Image_url 图片地址 存放图片路径 varchar Link_to 跳转链接 存放跳转地址 varchar Pub_time 发布时间 varchar 4.3 I/O设计 图4-2 爱车共享沟通网站主页面 图4-3 用户和管理员登录页面 图4-4 用户注册页面 图4-5 用户登录后的默认的主页面 图4-6 用户个人中心操作页面 图4-7 管理员后台管理页面 第5章 系
47、统实现 5.1 数据库运用 5.1.1 MySQL MySQL是当下流行数据库之一,因为其是一个关系型数据库,且拥有可移植性、支持多种操作系统、支持多线程、优化SQL查询算法、供应多种语言支持、支持多种存储引擎等特点。所以在本次开发中运用的是MySQL数据库作为协助本网站系统完成各种表之间的数据查询、新增、删除和更新操作。因此,在本次开发运用的时MySQL8.0版本。 5.1.2 Navicat Premium介绍 为了便利网站系统开发过程中对众多数据表的查询管理操作,而官方下载安装的MySQL数据库是以吩咐窗口方式执行操作的。因此,在网上找到了破解版本的第三方数据库可视化工具Navicat
48、Premium对MySQL数据库进行便捷管理,主要界面如下: 图5-1 MySQL可视化工具 5.1.3数据库连接 在代码编写过程中利用Python语言编写的网站系统,运用到的是Pycharm代码编译工具,在里面对settings.py文件进行数据库信息配置,代码截图如下: 图5-2 数据库在Pycharm的配置 完成以上在Pycharm编译工具中的代码配置即可完成开发项目与数据库的连接。5.1.4 Gulp 前端页面开发包括css、html、js三个主要的部分,为了让它们更好地被我便利运用,我通过网上查阅资料和观看视频学习,确定运用前端自动化构建工具Gulp来帮助我对整个系统的开发。5.2 系统测试 在系统整体功能完成后,