西安邮电大学。
计算机学院)
web开发技术大作业。
专业名称网络工程。
班级1203
学生姓名:
学号(8位):
指导教师: 朱辉。
提交时间:2023年12月19日。
本次web大作业制作个人博客站点,通过b/s架构,我们能很方便的把对客户端进行更新、管理等等操作,而且数据库采用开源的mysql数据库,成本低、跨平台性能好。而且在服务器配置好phpmyadmin后,便可以远程操作数据库,十分方便。本**采用python作为后台语言,可移植性高。
一个人博客应该具有以下几个功能:
1. 登录。
2. 注册。
3. 写文章。
4. 评**章。
5. 文章管理。
**整体思路采取mvc的架构方式:
首先,在前端网页中,css样式没什么好说的,应为风格采用了扁平化的方式,css样式比较简单。不过在数据交互的过程中,我采用了js中的jquery和ajax,这样会让前端网页在动态中显得更加漂亮。
为了实现动态网页的设计,我采用了python的web框架,使用了jinja2技术来将前端网页模板化,将网页拆成许多个小块,在用的时候,再组成客户能看到的页面。由于python提供的web框架各有所长,所以我重新构造了一个web框架:jinja2来是页面模版化,django来实现socket通信和拦截,来对url映射。
有了承上启下的web框架之后,就得针对web app进行api的设计,这里采用rest的方式来设计api,使用的数据格式是json,这样就能直接被js获取,然后我就能把数据进行封装,来完成数据传输。
接下来该设计的就是数据库的连接,底层模块设计的原则是,根据上层调用者设计简单易用的api接口,然后,实现模块内部**。所以,设计一个db模块,来作为数据库连接的引擎,连接上数据库后,我能使用sql语句对数据库进行操作,为了避免sql注入攻击,把sql中不用的字符作为占位符。
完成底层数据库db模块后,就是设计orm模块的时候,因为使用sql语句来操作数据库还是有些不方便,所以将sql语句换为更为简单的api来给上层操作使用。
有了orm模块后,上层模块model就能将数据库需要的表表示出来了。不过,我要提前用sql脚本初始化数据库,以便调试。
我的设计风格以扁平化和简约为主,不多加太多的修饰,让人能一下子抓住重点。
背景以白色为主色(不是纯白),这样子字的颜色选用黑色会显得比较显目,而且白色搭配蓝色我觉得也是一种类似于地中海风格的搭配,总之能让人觉得很是舒服。
为了能让错误提示更加美观,我采用了ajax技术,这样子,在输入不合法的时候就不会重新加载页面了。
对于图标的选用,我也采取当下流行的扁平化的风格,这样的图标虽然简单,但是能传达的信息是非常巨大的。
由于我才用python来作为后台语言,所以必须要用python的支持。
以下是支持清单:
2. mysql-connector-python(python第三方库)
3. jinja2(python第三方库)
4. mysql(提供数据库支持)
5. 浏览器(推荐谷歌等浏览器)
因为python跨平台性好,所以我对系统要求不高,如果实在linux系统上搭建服务器的话,最好有phpmyadmin来管理数据库。
我的编程软件分别为sublime 2和pycharm
前者我用来写前端网页,后者我用来python**,在本机测试的时候,使用自建服务器通过浏览器访问localhost:9000
python及第三方库:c:\python27
mysql:c:\program files\mysql
数据库er图:
数据库脚本:
我建立了如下目录结构。
blog<--根目录。
+- static<--存放静态文件。
css<--存放css样式文件。
fonts<--存放字体文件。
js<--存放js文件。
+-templates<--存放模版文件。
+-transwarp<--存放底层py文件。
**的首页地址是ip:端口号/
当访问这个地址是就会进入如图所示的页面了,这便是我的博客的首页了。这里展示的是每一篇博文的主题和摘要,图中有能看到的是三篇博文,主题分别是“学号是04122071”、“实验”、“web大作业”,这是首页的主体部分。在首页的右边,可以看到两名同班同学博客的友情链接,通过友情链接可以访问“常宫小戎”、“刘漫玉”的个人博客。
首页上部管理区,可以进入到博客的管理页面。
数据录入:我的站点数据录入有两张方式,一种是注册帐号,一种是发表博问和评论。
首先是注册帐号,我的帐号是管理员,拥有的权限最高,当然,只能我有,所以在建立数据库的时候,就在数据库中直接写入了。游客(看我博客的人)过来,只能注册普通账户,不能发表博文,只能评论和查看博客。
例如:这个页面就注册了帐号是:名字为:瞿祥轩。
可以查看数据库:
可以看到此账户信息已经保存到数据库中了,可以发现,密码采用了md5的加密,同样的,这个帐号也可以登录:
帐号密码输入成功后,就进入首页,不过在下图中标注的位置,已经是注册时的名字了。
接下来是发表博文和评论:
可以先看游客账户发布评论,首先点击继续阅读,就能查看本博文的详细内容:
输入内容后,点击发表评论,就可以了,然后查看数据库:
内容已经在数据库中了,网页上也显示出来了。
再看撰写博文,下图是页面:
填入标题,摘要和内容就能发表了,在首页中,我提前写好了三篇博文,在页面已经展示出来了,而在数据库中,如下图,也是正确的:
此上是数据录入的部分;
对于操作页面,只有管理员可以查看:
管理页面中,有三项,可以对评论、日志和用户进行管理,来试着删除一篇博文:
如上图,页面上显示已经删除了,下图中,数据库也已经删除成功了:
评论的模式和日志差不多,便不再赘述了。
python开发实战人民邮电出版社/beproud股份****著。
html教程。
css教程。
j**ascript教程。
北京邮电大学就业指导作业
就业的认识。据人力资源和社会保障部公布的数据,我国有2400万劳动力需要安排就业,其中将有超过700万大学毕业生需要解决就业问题。可以预见,在未来相当长时期内大学生就业压力不会减弱。大学生就业大多数集中到发达地区 高薪部门就业,愿意到欠发达地区工作的较少。其中广州 上海 北京应届大学生毕业生的首选,...
Web技术基础大作业报告
学院 计算机学院。姓名 学号 主要分以下几个版块 1.主页版块 2.登录版块。3.注册板块。4.个人介绍板块。5.分享思维模块。6.发现思维模块。7.我的思维模块。8.搜索模块。9.帮助模块。摘要 web引申为 web编程基础大作业报告。学院 计算机学院。姓名 学号 主要分以下几个版块 1.主页版块...
模电大作业报告
实验报告。基于protues 软件对模拟电子技术的四个基础电路的 及研究。院系及班级信息学院通信xx 组员及学号 xxx xxx xxx 本实验共分五个部分组成 第一部分 单管放大电路 第二部分 多级放大电路 第三部分 集成运放电路 第四部分 滞回比较器 第五部分 实验报告及说明 一 单管放大电路 ...