XX工坊项目开发01--微信小程序+python

2022-11-12 15:23:30 浏览数 (1)

 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部分代码

代码语言:javascript复制
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)

如有相关的demo和案例,感谢各位大师的提供

0 人点赞