今天给各位分享极简个人网站源码分享的知识,其中也会对个人网站源码下载进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
StackOverflow是全球最大的IT技术问答网站之一,在程序员界无人不知无人不晓,堪称“面向搜索引擎编程”神器。下图就是StackOverflow网站首页图:
是不是有种似曾相识的感觉?其实国内很多技术问答网站都是仿照StackOverflow来做的,那么问题来了,开发一个StackOverflow这样的网站需要哪些工作呢?
首先我们来看看StackOverflow有哪些主要功能:
1、提问功能;
2、回答功能;
3、点赞功能;
4、用户管理功能;
围绕上面的4大功能,开发方面就涉及到:
1、开发语言的选择;
2、框架的选择;
3、数据库的设计;
4、接口开发;
5、部署;
……
今天就给大家带来一门开发「仿StackOverflow问答网站」的课程,包含具体开发思路、过程详解、代码等。项目使用了Python的FlaskWeb框架,带你实现属于自己的“问答网站”,实现提问、回答、评论、点赞等完备功能,并有完整源码可供下载。
效果显示
网站首页问题详情页
课程地址:
https://www.shiyanlou.com/courses/1617
下面是课程的第一节内容:
欢迎来到Flask的世界
Flask是一个使用Python开发的微型开发框架,基于WerkzeugWSGI工具箱和Jinja2模板引擎。Flask也被称为“microframework”,因为它具有极简的核心,然而却可以通过扩展的方式增加其它功能。Flask默认不支持数据库连接,不支持用户登录认证等功能。但是,我们可以通过各种扩展获得对这些功能的支持,比如数据库ORM、表单验证、文件上传、开放式身份验证技术。这使得Flask成为具有高度扩展性和灵活性的PythonWeb框架。
为什么要学习Flask?
正如上面所说,Flask是一个Web“微”框架,我们使用Flask可以快速的搭建网站。在互联网时代,一个好的idea不能尽快展现在人们的面前,确实是令开发者很苦恼的事情。容易学习。学完了Python基础之后想要接触Web开发,Flask非常易于学习。同时,稍后你能看到示例代码所展示的那样,这是一个十分简单的框架。你的大脑很自然地就适应它了。使用Flask,可以更快地开发。Flask有非常活跃、生机勃勃的社区:很多人会推荐你从Flask入手,Flask是最好的现代web开发的Python框架之一。
“微”是什么意思?
“微”并不代表整个应用只能塞在一个Python文件内,尽管塞在单一文件内也是小事一桩。“微”也不代表Flask功能不强。微框架中的“微”字表示Flask的目标是保持核心简单但是可扩展。Flask不会替你做决定,比如选用何种数据库。类似的决定,如使用何种模板引擎,是非常容易改变的。Flask可以变成你任何想要的东西,不会变成任何你不想要的东西,一切由你做主。
缺省情况下,Flask不包含数据库抽象层、表单验证或者其他已有的库可以处理的东西。然而,Flask通过扩展为你的应用支持这些功能,就如同这些功能是Flask原生的一样。有无数的扩展可以支持数据库整合、表单验证、上传处理和各种开放验证等等。Flask可能是“微小”的,但绝不简单,可以满足各种生产需要。
环境准备
在本训练营所提供的实验环境中,已经安装了Python3.5以及包管理工具pip。首先打开终端,执行如下语句切换到/home/shiyanlou/Code目录下,升级pip3到最新版:
$cd~/Code\n$sudopip3install-Upip
操作截图如下:
使用virtualenv创建虚拟环境
目前Python中创建隔离开发环境的工具有多种选择,其中virtualenv是最优秀的一个。所谓隔离是指virtualenv为每个Python项目创建虚拟环境,并保证该程序只能访问该虚拟环境下的包,解决了“项目A依赖于版本1.x,而项目B需要版本2.x”的两难问题,从而保持全局Python环境的干净整洁。另外使用virtualenv还有个好处,那就是在安装Python第三方库的时候不需要管理员权限。
安装virtualenv
安装virtualenv的途径有很多,因为实验环境中已经安装了pip包管理工具,所以使用如下命令即可安装,这也是最常用的方式:
39;/&39;HelloWorld&39;__main__&39;0.0.0.0&39;HelloWorld&39;0.0.0.0'作为host参数的值以便任何局域网内的浏览器都可以请求该网址,并且将端口号设置为8080。
终端执行pythonapp.py启动应用:
点击右侧工具栏中的“Web服务”按钮:
浏览器会新建一个标签并访问我们的网站首页:
这就是一个最基本的Web网站的样式,在后面的实验中我们会基于此深入学习。
总结
本节实验内容较为简单,主要介绍了FlaskWeb框架的特点,以及实验环境的准备工作。在实验环境中更新pip和virtualenv,并使用后者创建了虚拟环境。在虚拟环境中编写了一个FlaskWeb应用,并成功启动。
下一节实验我们继续深入学习Flask的配置、映射类的编写等操作。
点击了解更多,学习完整课程内容~
关于极简个人网站源码分享的内容到此结束,希望对大家有所帮助。