Python2.7.14装置和pip配置安装及虚拟环境搭建葡京赌场网址

目录

style=”font-family: 宋体; font-size: 14pt;”>前言

style=”font-family: 钟鼓文;”>第8 style=”font-family: 行书;”>章
用户认证

style=”font-family: 行草;”>第9 style=”font-family: 甲骨文;”>章
用户角色

style=”font-family: 大篆;”>第10 style=”font-family: 行书;”>章
用户资料

style=”font-family: 金鼎文;”>第11 style=”font-family: 行草;”>章
博客小说

style=”font-family: 宋体;”>第12 style=”font-family: 宋体;”>章
关注者

style=”font-family: 石籀文;”>第13 style=”font-family: 金鼎文;”>章
用户评价

style=”font-family: 小篆;”>第14 style=”font-family: 石籀文;”>章
应用编程接口

目录

style=”font-family: 宋体; font-size: 14pt;”>前言

1 Python2.7.14 style=”font-family: 宋体;”>安装

2 pip style=”font-family: 燕书;”>配置安装

3 style=”font-family: 钟鼓文;”>虚拟环境设置

 

 

 

 



前言

第1章-第7章学习实践记录请参见:《Flask
Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)

 

正文记录自己攻读《Flask
Web开发——基于Python的Web应用开发实践》的第8章-第14章内容。相相比于刚初始攻读第1-7章内容的话,本有的情节实战性更强,而且在书本上境遇的题材也相对较少,要是认真弄懂前7章内容的话,本有的情节相当于是对前7章内容的切切实实实施,学习也很轻松。

 

率先表明一下本有的品种示范实现了什么样成效?

  • 用户角色:普通用户、管理员
  • 实际职能:登陆、注册、发表作品、编辑成文、用户间关心、用户评价、修改个人音信、管理用户评价、马克Down呈现作品格式。

下图中所示为一个大班角色登陆系统各部分效用图片动态图:

 葡京赌场网址 1

自我要好上机演练代码:(PS:和作者GitHub上代码有稍许界别)

 

 


前言

今天在搭建阿里云服务器,需要设置Python相关条件,此前在本机都已经安装过一回,今日又来设置一次,安装具体经过手续即便记得不亮堂,不过大概的手续也是记念。但是,这样的事态就是亟需团结重新去网上查找有关文件下载网址以及基本的装置教程对照一下,感觉特别耗时间,也正如麻烦。所以,这一次安装过程中,顺便把温馨的具体步骤和过程记录下来,下次搭建环境时,直接查看,毕竟自己写的,明白也会连忙吧。也期望本篇著作对此外初学同学有所协理啊,哈哈。

 

 


第8章 用户认证

1.书本79页密码散列效率shell测试有bug

设若学完第7章,并依照71页manage.py中写入启动脚本代码,在控制台输入python
manage.py shell会报以下错误:TypeError: <flask_script.commands.Shell
object at 0x0000000004E29668>: ‘dict’ object is not callable

葡京赌场网址 2

 

解决办法如下图:

 葡京赌场网址 3

 

继之,假使仍旧安装书本上命令指示输入指令,会报以下错误:Traceback
(most recent call last):File “<console>”, line 1, in
<module>

解决办法见下图:

 葡京赌场网址 4

 

2.书本87页用shell插入新用户数据有bug

本问题在于数据库设计带有外键,直接遵照书中插入代码,未插入用户角色外键,是无法插入数据的。

解决办法:删除User表和Role表之间的多对一涉嫌

 葡京赌场网址 5

 

然后,删除项目中兼有**.sqlite文件和migrations文件夹,具体如下:

 葡京赌场网址 6

 

下一场按照下图所示三步,重新创建数据库(PS:此处方法见第5章5.11节):

 葡京赌场网址 7

 

这多少个处理完毕后,依据书上插入代码,依然会报找不到User和db错误,解决办法如下:

葡京赌场网址, 葡京赌场网址 8

 

成就以上数量插入任务后,在CMD控制台输入python
manage.py
runserver开启服务,浏览器中输入http://127.0.0.1:5000/auth/login,然后用插入的邮箱号和密码进行登陆,会得到如下结果:

 葡京赌场网址 9

 

 葡京赌场网址 10

 

 

3.书本89页实际运作结果(PS:经验证,数据可以挂号成功)

 

 葡京赌场网址 11

葡京赌场网址 12

 

4.书本92页执行一个新的数据库迁移

在CMD窗口中,依次输入python
manage.py db migrate -m “the second migration”、python manage.py db
upgrade命令,具体执行以及拿到结果如下:

 葡京赌场网址 13

葡京赌场网址 14

 

5.书本94页示例8-22代码因为Flask-Login版本问题出现如下图所示bug

 葡京赌场网址 15

 

解决办法见下图:

 葡京赌场网址 16

 

让自己困惑的是,我写笔记时看的是实体书,下边代码有问题,下面截图的是电子书,上边却是正确的>~<,具体如下:

 葡京赌场网址 17

 

题目迎刃而解方案网址(https://segmentfault.com/q/1010000004041497

测试is_authenticated方法如下:

 葡京赌场网址 18

 

叠加书本95页页面运行结果:

 葡京赌场网址 19

葡京赌场网址 20

 

 

并发上图的原因:

花了一个多刻钟找错,结果发现是祥和照着书籍83页敲示例8-8代码时少了return语句,直接写User.query.get(int(user_id)),具体如下:

 葡京赌场网址 21

 

解决来源(https://github.com/maxcountryman/flask-login/issues/302):

 葡京赌场网址 22

 

运行成功界面如下:

 葡京赌场网址 23

 

下边是自我自己修改数据库数据中邮箱验证属性为True时突显结果(PS:紧要在于邮箱验证时索要报名临时密码,所以就没填写具体邮箱数据,直接手动改写后台数据库中数量):

 葡京赌场网址 24

 

注:第8章重点讲解了怎么运用Flask框架实现用户登陆、注册功用,以及使用邮箱举行用户注册确认以及密码修改确认等。感觉第8章内容就是对书籍前7章内容的一遍综合演习,所有应用的技术点都足以在前7章中找到。所以,个人感觉只要扎扎实实把第8章所有代码以及落实思路弄懂,才算是刚刚入门Flask框架。

 

 


1 Python2.7.14安装

官网下载链接https://www.python.org/downloads/release/python-2714/

Windows版本64位下载(链接:https://pan.baidu.com/s/1dFMw3NN密码:id5y)

Windows版本32位下载(链接:https://pan.baidu.com/s/1o8aHeXG
密码:m6yc)

 葡京赌场网址 25

下载完成后,一键点击运行,全体增选同意,默认安装路径即可在系统盘C盘看到自己的安装文件。此时剩余工作,就是把Python的安装路径添加到系统的环境变量Path中。

例如我的Python安装路径为C:\Python27,那么找到系统环境变量设置,点击Path,具体如下:

 葡京赌场网址 26

在Path里面添加
;C:\Python27 即可。那样设置后,才CMD中从来输入python即可打开自带的编译环境,也可一贯拔取python命令,例如python
–version
命令等。

如下:

 葡京赌场网址 27

 

 


第9章 用户角色

1.书本99页使用shell会话把角色写入数据库问题

是因为在第8章实现过程中,我把Role表和User表之间的外键关系给删除了,假诺在这章不另行回升两表之间的关系就不可能兑现用户角色的效应。所以,在这种情景下,我又得要把数据库重新开首化、迁移和创设。之所以这么做,而不是直接举行搬迁和创办,是因为自己在一直开展搬迁和开创的进程中,报错:default属性在框架中曾经存在,不能创制新的Role表,这多少个似是而非没有解决,由于初学,无奈,直接删除migrations文件夹和转变的data-dev.sqlite数据库文件,重新展开先导化、迁移和开创,发现一切OK。具体如下:

 葡京赌场网址 28

 

好了,既然Role表和User表之间有了一对多而存在的外键关系,这注册功效插入用户数据时,必须得要确认用户角色,否则不可能插入。

 葡京赌场网址 29

 

碰巧展开了挂号测试,竟然毫无确定用户角色,也可以插入成功。这样的感觉到违背了本人上学数据库的理论知识啊,往日第5章,举办插队数据时,行不通,现在好了。揣测是事先学习时,代码有点bug。

 

注:本章相当于重点在讲数据库的学识,和本书大旨Flask框架的知识点联系不大,其中主题思想就是概念权限来分配角色等级。一个用户有的惟有一种权限,有的能够有多种权力。权限的分配很利索,那样处理操作大大简化了数据库的宏图难度,也增强了多少的条理性。

 

 


2 pip配置安装

pip官网下载链接https://pypi.python.org/pypi/pip#downloads

 葡京赌场网址 30

下面直接在官网上下载的pip-9.0.1.tar.gz文件,在团结电脑上有可能来得不可能被tar解压缩文件识别,即不能解压,不了解干什么,有点坑。

下面附带一个本身要好霎时不通晓在哪或者怎么下载的一个等同的本子,下载后可被电脑中的tar解压缩文件识别。

百度云下载链接:https://pan.baidu.com/s/1i4Hoxmt密码:f150

 葡京赌场网址 31

下载后,解压缩下面pip-9.0.1.tar.gz文件,打开CMD,进入解压缩后文件的根目录,该目录中有一个setup.py文件,然后再cmd中输入python
setup.py install
指令,不出意外即可成功安装,具体如下图:

 葡京赌场网址 32

看到上图中指示信息,表达你的pip已经安装成功啦,进入Python安装路径的Scripts文件夹下即可见到pip.exe,表达可以运用pip啦,具体如下:

 葡京赌场网址 33

 

 


第10章 用户资料

1.书本105页、107、109页和112页操作运行结果

此间依据书本上的代码讲解,进行编辑代码操作,其中碰到的题材在前边均已遭受过,所以到了这边基本没啥难点。依照书本讲解,运行结果具体如下:

用户简介页面

 葡京赌场网址 34

 

普通用户修改个人音讯界面

 葡京赌场网址 35

 

葡京赌场网址 36

领队修改个人音讯界面

 葡京赌场网址 37

 

葡京赌场网址 38

 

显示用户头像的素材页面

 葡京赌场网址 39

 

 

 

注:本章首要实现博客系统普通用户和大班角色的个人信息编辑功效实现,此处实现没有怎么技能亮点和难点,只要认真完成书本前述部分,这有的意义完全没有阻力。

 

 


3 虚拟环境安装

开辟CMD进入自己Python安装路径的Scripts文件夹下,输入pip
install virtualenv
,如下图:

 葡京赌场网址 40

 

让后,把安装的virtualenv所在路径添加到环境变量path中,这样可以一直在cmd中采纳virtualenv命令来新建虚拟环境,具体如下:

 葡京赌场网址 41

 

然后在协调电脑某一盘内新建一个存放项目文件目录,然后再CMD中进入该目录,输入以下命令virtualenv
venv
即可在该品种目录下新建一个名号为venv的虚拟环境,在该条件下Python版本默认为2.7.14,并且自带pip,很便宜。具体如下:

 葡京赌场网址 42

看看上图,表明拥有工作已经完结,可以规范开启代码之旅啦~

 

最后,推荐一款有关Python的ID
E,个人感觉很好用,即PyCharm。

官网下载链接http://www.jetbrains.com/pycharm/download/#section=windows(PS:一般个人开发者选取社区免费版)

百度云社区免费版下载链接:https://pan.baidu.com/s/1dFFAUkT
密码:jjnq

附具体界面:

 葡京赌场网址 43

 

第11章 博客小说

1.关于书籍119页示范11-8代码

本有的代码在作者GitHub上从不以身作则代码,即只要要促成导入虚拟数据测试功用,只可以协调一个代码一个代码敲。可是,这么些也太多了点,一个假名出错就要改错>~<。从作者GitHub上一贯克隆下来的代码,即便并未以身作则代码,然而应当是笔者更新代码后,在此处换了另一种实现格局,因为在档次文件中冒出了一个新的fake.py文件,该文件中代码和演示11-8代码基本相仿。

 

2.书籍117页、123页、125页和130页操作运行结果

 葡京赌场网址 44

葡京赌场网址 45

 

 葡京赌场网址 46

葡京赌场网址 47

 

注:本章是对博客系统机能的恢宏,紧要实现用户编辑发送博客著作,其中还是可以利用马克(Mark)Down来落实对随笔的编纂。效用具体贯彻参照书本的代码讲解即可,基本不会赶上什么较难的题材。

 

 


第12章 关注者

1.书本137页和142页实际运作结果

 葡京赌场网址 48

葡京赌场网址 49

 

 葡京赌场网址 50

 

 2.操作完第12章代码后,倘使接纳用户退出,可能会冒出以下bug:AttributeError:
‘AnonymousUser’ object has no attribute ‘followed_posts’

 葡京赌场网址 51

 

解决办法,在models.py文件中找到AnonymousUser类,在这一个类中添加一个办法,具体代码如下:

@property
def followed_posts(self):
    return Post.query.join(Follow, Follow.followed_id == Post.author_id) \
        .filter(Follow.follower_id == None) 

 葡京赌场网址 52

 

注:本章具体落实部分的难题是关心用户记录的多少库表的宏图,即多对对关系会生成一张中间表。此外一些,遵照书本上的代码来上机操作,基本不会遇上什么样困难。

 

 


第13章 用户评价

1.书本148页和151页实际上机运行结果

 葡京赌场网址 53

葡京赌场网址 54

 

 

注:本章紧要实现博客的用户评价效能,以及添加了一个协管员权限,具体落实没有什么样难题,按照书本的代码上机操作即可。

 

 

 


第14章 应用编程接口

1.书本168页测试打印结果

此间具体操作需要先在CMD中开拓服务,才能收获api中数据。(PS:推荐一篇博客:http://blog.csdn.net/huang5487378/article/details/60778293

运转结果:

 葡京赌场网址 55

葡京赌场网址 56