前言 style="font-family: 黑体;">第8 style="font-family: 行书;">章顾客认证 style="font-family: 陶文;">第9 style="font-family: 小篆;">章客商剧中人物 style="font-fami" name="description">

永利电子游戏网址《Flask Web开发——基于Python的

来源:http://www.venoautomotive.com 作者:永利电子游戏网址 人气:184 发布时间:2019-10-29
摘要:目录 style="font-family: 宋体; font-size: 14pt;">前言 style="font-family: 黑体;">第8 style="font-family: 行书;">章顾客认证 style="font-family: 陶文;">第9 style="font-family: 小篆;">章客商剧中人物 style="font-fami

目录

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: 燕体;">章 应用编制程序接口

 

 


前言

第1章-第7章学习实行记录请参见:《Flask Web开辟——基于Python的Web应用开采施行》一字一板上机试行(上)

 

正文记录本身读书《Flask Web开辟——基于Python的Web应用开辟施行》的第8章-第14章内容。比较Yu Gang领头读书第1-7章内容的话,本有的剧情实战性越来越强,何况在书本上蒙受的主题材料也针锋绝对少之甚少,假诺认真弄懂前7章内容的话,本有的内容相当于是对前7章内容的有板有眼实行,学习也很自在。

 

第一说澳优下本有的品种示范完结了何等职能?

  • 顾客剧中人物:普通顾客、管理员
  • 具体效果:登入、注册、发表小说、编辑成文、顾客间关注、顾客评价、改良个人音信、管理客商评价、马克Down呈现作品格式。

下图中所示为贰个组织者剧中人物登录系统各部分作用图片动态图:

 永利电子游戏网址 1

自家本人上机练习代码永利电子游戏网址《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(下)。:(PS:和作者GitHub上代码有多少分别)

 

 


第8章 客商认证

1.书本79页密码散列作用shell测量试验有bug

假如学完第7章,并依据71页manage.py中写入运转脚本代码,在支配台输入python manage.py shell会报以下错误:TypeError: <flask_永利电子游戏网址《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(下)。永利电子游戏网址《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(下)。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

 

永利电子游戏网址《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(下)。然后依据下图所示三步,重新创制数据库(PS:此处方法见第5章5.11节):

 永利电子游戏网址 7

 

这一个管理完毕后,根据书上插入代码,照旧会报找不到User和db错误,扑灭办法如下:

 永利电子游戏网址 8

 

造成上述数据插入职责后,在CMD调控台输入python manage.py runserver开启服务,浏览器中输入

 永利电子游戏网址 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

 

让作者纳闷的是,小编写笔记时看的是实体书,上边代码有标题,下边截图的是E-BOOK,下面却是精确的>~<,具体如下:

 永利电子游戏网址 17

 

难点解决方案网站()

测试is_authenticated方法如下:

 永利电子游戏网址 18

 

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

 永利电子游戏网址 19

永利电子游戏网址 20

 

 

现身上海教室的因由:

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

 永利电子游戏网址 21

 

缓慢解决来源():

 永利电子游戏网址 22

 

运行成功界面如下:

 永利电子游戏网址 23

 

下边是本身要好改正数据库数据中国聚焦国人民邮政办事处公司箱验证属性为True时来得结果(PS:首要在于邮箱验证时须要申请有时密码,所以就没填写具体邮箱数据,直接手动改写后台数据库中多少):

 永利电子游戏网址 24

 

注:第8章重点讲明了何等运用Flask框架完成客商登入、注册效率,以致使用邮箱举行客户注册确认以致密码纠正确认等。感到第8章内容正是对书籍前7章内容的一遍综合作演出习,全数应用的技能点都能够在前7章中找到。所以,个人以为只要不追求虚名把第8章全部代码以至贯彻思路弄懂,才算是刚刚入门Flask框架。

 

 


第9章 客户剧中人物

1.书本99页使用shell会话把剧中人物写入数据库难点

鉴于在第8章实现进度中,小编把Role表和User表之间的外键关系给删除了,要是在此章不另行上升两表之间的关系就无法兑现顾客剧中人物的职能。所以,在此种地方下,笔者又得要把数据库重新发轫化、迁移和创建。之所以如此做,并非直接开展搬迁和创设,是因为俺在平素开展搬迁和开创的进度中,报错:default属性在框架中早就存在,不恐怕创建新的Role表,那么些乖谬未有消弭,由于初学,无助,直接删除migrations文件夹和转移的data-dev.sqlite数据库文件,重新展开初步化、迁移和开创,发掘一切OK。具体如下:

 永利电子游戏网址 25

 

好了,既然Role表和User表之间有了生龙活虎对多而存在的外键关系,那注册功效插入客商数量时,必得得要确定客户剧中人物,不然不能插入。

 永利电子游戏网址 26

 

赶巧实行了登记测量试验,竟然毫无鲜明客商剧中人物,也足以插入成功。那样的认为到违背了自家就学数据库的理论知识啊,在此以前第5章,举办插队数据时,行不通,今后好了。测度是前边学习时,代码有一些bug。

 

注:本章相当于入眼在讲数据库的知识,和本书大旨Flask框架的知识点联系极小,在那之中宗旨绪想正是概念权限来分配角色等级。三个客户有的独有意气风发种权限,有的能够有各样权力。权限的分配很利索,那样管理操作大大简化了数据库的规划难度,也提升了数额的条理性。

 

 


第10章 客商资料

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

此地依据书本上的代码解说,举行编写制定代码操作,当中蒙受的主题素材在眼下均已碰着过,所以到了那边基本没啥难点。遵照书本解说,运维结果具体如下:

客户简要介绍页面

 永利电子游戏网址 27

 

普通顾客改良个人新闻分界面

 永利电子游戏网址 28

 

永利电子游戏网址 29

组织者纠正个人音讯分界面

 永利电子游戏网址 30

 

永利电子游戏网址 31

 

呈现客户头像的资料页面

 永利电子游戏网址 32

 

 

 

注:本章首要达成博客系统普通客户和协会者角色的个人新闻编辑功用实现,此处完结没有怎么技巧亮点和难点,只要认真完结书本前述部分,那意气风发部分效能完全未有障碍。

 

 


第11章 博客小说

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

本有的代码在作者GitHub上从不亲自去做代码,即只要要促成导入设想数据测量检验效能,只好自个儿二个代码贰个代码敲。但是,这一个也太多了点,二个假名出错就要改错>~<。从小编GitHub上一直克隆下来的代码,就算从未亲自过问代码,不过应该是小编排轮更值夜班新代码后,在这里处换了另生机勃勃种达成方式,因为在项目文件中现身了贰个新的fake.py文件,该公文中代码和示范11-8代码基本相通。

 

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

 永利电子游戏网址 33

永利电子游戏网址 34

 

 永利电子游戏网址 35

永利电子游戏网址 36

 

注:本章是对博客系统机能的扩大,主要达成顾客编辑发送博客文章,个中还能应用马克Down来完毕对随笔的编撰。成效具体达成参照书本的代码解说就能够,基本不会超越什么较难的主题素材。

 

 


第12章 关注者

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

 永利电子游戏网址 37

永利电子游戏网址 38

 

 永利电子游戏网址 39

 

 2.操作完第12章代码后,假使选取客户退出,只怕会见世以下bug:AttributeError: 'AnonymousUser' object has no attribute 'followed_posts'

 永利电子游戏网址 40

 

消除办法,在models.py文件中找到AnonymousUser类,在此个类中增添三个艺术,具体代码如下:

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

 永利电子游戏网址 41

 

注:本章具体落实部分的难处是关爱客商记录的数额库表的两全,即多对对关系会生成一张中间表。别的一些,根据书本上的代码来上机操作,基本不会遇见什么样难点。

 

 


第13章 客商评价

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

 永利电子游戏网址 42

永利电子游戏网址 43

 

 

注:本章首要完结博客的客商评价功效,以致增添了贰个体协会助管理员权限,具体完毕未有怎么难题,依据书本的代码上机操作就能够。

 

 

 


第14章 应用编制程序接口

1.书本168页测量试验打字与印刷结果

此间具体操作须要先在CMD中张开服务,技艺获得api中数量。(PS:推荐大器晚成篇博客:)

运作结果:

 永利电子游戏网址 44

永利电子游戏网址 45

 

 

 

本文由永利官网误乐域发布于永利电子游戏网址,转载请注明出处:永利电子游戏网址《Flask Web开发——基于Python的

关键词:

最火资讯