```
- 注册处理
```python
user=User()
user.name=name
user.phone_number=phone
user.password=password
user.user_type=1
db.session.add(user)
db.session.commit()
```
- 数据可视化ajax代码
```js
$.ajax({
type: "GET",
url: "http://127.0.0.1:5000/user/get_data",
success: function(data){
var data1=data
echarts_1();
echarts_2();
echarts_3();
echarts_4();
echarts_5();
map();
```
- 数据可视化获取数据
```python
@blue.route('/get_data', methods=['GET', 'POST'])
def get_data():
data=json.loads(json.dumps(get_dic(), cls=NpEncoder))
return data
```
- 个人信息修改
```html
```
- 个人信息修改处理
```python
@blue.route('/reset_pwd', methods=['GET', 'POST'])
def admin_upreset_pwddate():
u_id = request.cookies.get('u_id')
score=User.query.filter(User.id==u_id).first()
if request.method=='GET':
return render_template('info_edit.html',data={'score':score,'message':None})
phone=request.form.get('phone_number')
password=request.form.get('password')
score.phone_number=phone
score.password=password
db.session.add(score)
db.session.commit()
return render_template('info_edit.html', data={'score':score,'message':'修改成功!'})
```
知识点 | HTML表单、HTTP 请求 | 数据库 | 条件判断语句、 for 循环语句 | 字典、列表 | 自定义模块的使用 | Flask 第三方模块的使用
---|---|---|---|---|---|---
学习成本(天) | 2 | 6 | 3 | 4 | 3 | 6
应用比例 | 8% | 25% | 12.5% | 16% | 12.5% | 25%
### 3. 云端项目部署的基本描述
#### 3.1 页面链接与页面功能介绍
**主要功能**
- 登陆:http://47.103.193.20/user/login
- 注册:http://47.103.193.20/user/regiest
- 可视化图表:http://47.103.193.20/user/index
- 用户管理:http://47.103.193.20/user/user_manager
- 用户搜索:http://47.103.193.20/user/user_manager?keywords=
- 用户删除:http://47.103.193.20/user/admin_delete?u_id=
- 用户编辑:http://47.103.193.20/user/edit_user?u_id=
- 密码修改:http://47.103.193.20/user/reset_pwd
- 退出登陆:http://47.103.193.20/user/login_out
可视化图表中**一个页面嵌套了多个页面**。
##### 3.1.2 界面截图
- 登陆与注册


- 可视化图表*5(需要加载一段时间)





- 以直接数据方式查看

- 密码修改与成功界面


#### 3.2 数据流程图

#### 3.3 云端功能
主要实现的功能有登陆、注册、数据可视化、个人信息修改等功能,且所有数据都保存于独立数据库mysql。
#### 3.4 部署心得(使用阿里云进行部署)
1. 项目刚开始开发的时候,文件配置是个大问题,配置了之后初始化项目无法运行,后面经过网上查询得知项目正确的[配置](https://www.cnblogs.com/zhaohuhu/p/9218127.html)方式。
2. 提交表单的时候总是出现[400](https://www.cnblogs.com/vinic-xxm/p/11690070.html)bad request,后面在网上查询得知表单提交数据需要添加csrf_token这个数据才能正确的提交表单,目的是为了解决跨域问题。
## 三、学习/实践心得总结及感谢
通过这次的flask项目实践,让我对python的知识更加了解,在项目编写过程中,我充分的使用了字典,列表,元组等基本的语法和操作,功能逻辑方面可能有些缺陷,但是这次的实践让我收获最大的还是解决问题的方法,当我们遇到问题的时候,可以通过互联网自行解决问题,同时做好记录解决问题的过程,下次遇到同类型问题就能迎刃而解。
这学期的学习很艰难但收获满满,从对python一无所知开始,到可以自学很多内容、查找资料最后完成一个有完成度的项目,得到了很大的成就感。我们不仅运用了python,还运用到了大一学习的html代码和css代码等等,在本学期网站运营与管理中学习的云服务器部署也对这个项目帮助很大。
- 感谢bootstrap官网提供模板:
[bootstrap中文网](https://www.bootcss.com)
[bootstrap优选网站实例](https://www.youzhan.org)
- 感谢各类学习网站提供的HTML、CSS、Python3、log教程:
[HTML 元素](https://www.runoob.com/html/html-elements.html)
[HTML 颜色名](https://www.runoob.com/html/html-colornames.html)
[HTML 属性](https://www.runoob.com/html/html-attributes.html)
[HTML CSS](https://www.runoob.com/html/html-css.html)
[HTML 区块](https://www.runoob.com/html/html-blocks.html)
[CSS 语法](https://www.runoob.com/css/css-syntax.html)
- 感谢python编程过程中对我有所帮助的网站
[python编程中遇到的错误类型,原因及解决方法](https://blog.csdn.net/qq_31391261/article/details/80274589)
[Python编程中常见问题类型与解决](https://blog.csdn.net/qq_45108376/article/details/104684696?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242)
- 感谢阿里云提供的学生优惠服务器及服务
[阿里云首页](https://cn.aliyun.com/)
[阿里云最新活动](https://www.aliyun.com/activity?spm=5176.19720258.J_8058803260.2.54212c4aYn4Qh2)
[云服务器ECS](https://www.aliyun.com/1111/new?spm=5176.21103406.J_6174043250.3.fbd5597c1v0vBU)
- 感谢豆瓣给的灵感和数据提供
[豆瓣电影](https://movie.douban.com/)
[排行榜](https://movie.douban.com/chart)
```有充分独特的有效外链url共17个。```