XX工坊项目开发step01
1.技术路线的确定
由于工作原因,近来在一所本科院校担任大数据教学(本人非学校老师,校企合作),工作期间倍感学生们的编程能力有很大的提升空间。鉴于此,成立一个工坊,用于督促学生做项目。为降低学生的学习成本,尽快培养他们的自信,我与董博士(学校的老师)决定采用微信小程序加python的技术路线。
2.项目人员培养执行步骤
大一,大二的学生学习的科目很多,导致很多科目都学的一知半解,甚至无解,考试记一些,考过就忘了,是真的都忘记了。但做一个项目需要大量的基础训练,而完成这些基础训练往往大量时间且会让学生感到枯燥。因此,我想出一个办法,先从简单的项目的入手,再逐个点攻破,累计到一定阶段再次对基础部分做些强化训练。结合我们工坊的项目来说就是:
01 先让学生们掌握创建一个微信小程序的过程,并可以通过微信小程序获取一部分网络资源(获取豆瓣电影的api等),并展示在页面上
02 再次让学生了解python读取文件的过程,可以将文件展示在控制台(console)上,那么推出能否展示在网页呢?
03 提出python的web框架flask,通过一个只需5s的例子,展示出python可以搭建web服务器,提出问题,那么能否将python读取的文件的内容展现到页面上呢?
04 将python读取的文件数据展示在页面上成功后,提出能否将python读取的数据展示在微信小程序上,完成这个功能。
05 到此,一个基本的web项目骨架已经搭建成功,下面就是在此基础上提出各种技术业务的其它需求,对学生们进行监督指导,并督促他们的自主学习,并阶段性的完成成果的提交
3.项目代码
微信部分
全局部分
app.json { "pages" :[ "view/list/list" ] } app.js
默认的App({})就行
展示页面
list.js Page({ data:{ message: 'hello 大程序' , list:[] }, onLoad(){ // 加载数据并呈现到页面上 // this.data.message = XX 不可以 // this.setData({ // // 动态的修改一个页面的数据 // message:Date.now() // }) // const _this = this wx.request({ // url:'http://t.yushu.im/v2/movie/in_theaters', url: 'http://127.0.0.1:5000/' , data:{ 'hello' : 'this' }, header:{ 'Content-Type' : 'application/json' }, success: function (res) { // body... //console.log(res.data) _this.setData({ //list:res.data.subjects list: res.data }) } }) } }) list.wxml <!-- weixin markup language --> <!-- <text>{{ message }}</text> --> < view > <!-- <view class="item" wx:for="{{ list }}"> <image src="{{item.images.large}}"></image> <text>{{ item.title }}</text> </view> --> < view > {{list}} </ view > </ view >
python部分代码
from flask import Flask from flask import request from flask import make_response,Response app = Flask(__name__) @app.route('/', methods=['GET']) def index(): data =request.args.get('hello') with open('d://a.txt', 'r') as f: file = f.read() print('接收到的数据为',str(data)) return file @app.route('/demo2') def index1(): return '<h1>Hello World22!</h1>' if __name__ == '__main__': app.run(debug=True)