欢迎加入知了课堂,学习flask

Python Flask系列(1)——基础:http://study.163.com/course/courseMain.htm?courseId=1004091002

Python Flask框架——全栈开发: http://study.163.com/course/courseMain.htm?courseId=1004507006

 

 

 

 

首先声明一下,此小程序非彼小程序。小程序它有自己的一套语言,之前我们学习的是html、css做网页前端,跟真正的微信小程序开发环境是不一样的!!所以本次实现的功能,是仿照豆瓣小程序而写的(非本人所写,我只做代码分析~)

 

学习目的:将之前的学习的所有知识做个总结!!

 


一、展示

一共有三个页面,一个主页面,两个子页面。即可以通过主页面,跳转到其他页面。

首页:

 

电影页面:

 

电视剧页面:

 

二、项目目录

 

  1. 静态文件

    1. css文件:对视图模板进行渲染,使视图页面更加人性化

    2. 图片:被视图模板引用

  2. 模板文件:规范页面的主体构架

    1. base.html:基模板,实现最基本的构架。其他模板继承该模板

    2. macros.html:用于存放宏的定义,宏类似与高级语言的函数

    3. index.html:用于主页显示

    4. list.html:用于子页面的显示

  3. py文件:完成路由映射与逻辑处理

 

三、实现过程

 

已经确定要开发一个像展示那样的页面,所以

1.首先是主页面的构造

#index.html

这里用到的模板的继承和宏两种使用,想了解模板到底做了什么,需要进入声明的模板和宏看看究竟。

先看看模板文件

#base.html

<head>标签包含了标题、样式等,没啥可说的

<body>标签里,一是<input>输入框,是界面顶部我们看到的;二是<block>块,这里啥也没有

 

继续看宏定义文件

#macros.html

 

这是其中一个宏,一是将标题和一个超链接显示在一行,就是我们看到的

 

二是把items这个参数遍历了一遍,用到了另一个宏

(对了,items这个参数传进来的是一些电影/电视剧的数据,我后面会讲。)

这里将每个影片都渲染成我们看到的那样,有趣的地方是,它将传入的电影评转换显示成小星星的样式。

 

2. 对应的视图函数

将视图函数注册为路由端,我们直接访问这个服务器端口,就是访问这个函数。它将数据库的数据传入模板。当然我还没学过数据库,context这个字典的内容是写死的。

 

 

2. 然后就是拓展两个子页面

子页面是通过主页面的超链接,<a>标签中的 href 属性来连接一个URL,对应的视图函数

我们点击“更多”,等于向服务器发送一个请求。视图函数这边,通过request.args.get(‘键值’)来获取请求体中字典的某一个值,然后判断要显示的子页面。子页面与主页面的设计思路大致一样,我就不赘述了。

 

 

总结:另外,关于css渲染的部分我没有解释,是因为我觉得实在没有啥好说的。就这样吧!

 

 

 

欢迎加入知了课堂,学习flask

Python Flask系列(1)——基础:http://study.163.com/course/courseMain.htm?courseId=1004091002

Python Flask框架——全栈开发: http://study.163.com/course/courseMain.htm?courseId=1004507006