data from service to app -zl

master
zhoulu 5 years ago
parent 58efbe6a86
commit e7ebf7f210

@ -0,0 +1,18 @@
import json
from datetime import time
from pandas import np
class MyEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, np.integer):
return int(obj)
elif isinstance(obj, np.floating):
return float(obj)
elif isinstance(obj, np.ndarray):
return obj.tolist()
if isinstance(obj, time):
return obj.__str__()
else:
return ""

@ -2,12 +2,13 @@ import json
from flask import Flask, jsonify
from flask_sqlalchemy import SQLAlchemy
# 创建Flask实例
from DiaryBottle.code.DiaryBottleServe import MyEncoder
app = Flask(__name__)
# 指定配置
# 指定数据库连接及表名
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:4541@127.0.0.1:3306/diary_bottle?charset=utf8'
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:1234@127.0.0.1:3306/diary_bottle?charset=utf8'
# 省略提交操作
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
# 创建数据库对象
@ -20,15 +21,52 @@ class User(db.Model):
"""
__tablename__ = 'user'
id = db.Column(db.String(12), primary_key=True)
username = db.Column(db.String(20)) # 用户名
sex = db.Column(db.String(2)) # 性别
account = db.Column(db.String(20))
password = db.Column(db.String(20))
username = db.Column(db.String(32)) # 用户名
sex = db.Column(db.String(2)) # 性别
signature = db.Column(db.String(256))
sex = db.Column(db.String(2))
birthday = db.Column(db.Date())
mail = db.Column(db.String(30))
class Diary(db.Model):
"""
日记类
"""
__tablename__ = 'diary'
id = db.Column(db.String(12), primary_key=True)
uid = db.Column(db.String(12))
date = db.Column(db.Date())
mood = db.Column(db.String(8))
weather = db.Column(db.String(8))
content = db.Column(db.String())
authority = db.Column(db.String(10))
def user2dict(user):
return {
'id': user.id,
'account': user.account,
'password': user.password,
'username': user.username,
'sex': user.sex
'signature': user.signature,
'sex': user.sex,
'birthday': str(user.birthday),
'mail': user.mail,
}
def diary2dict(diary):
return {
'id': diary.id,
'uid': diary.uid,
'date': str(diary.date),
'mood': diary.mood,
'weather': diary.weather,
'content': diary.content,
'authority': diary.authority,
}
@ -37,20 +75,24 @@ def index():
return '服务器正常运行'
# 设置路由
@app.route("/select")
# 获取用户
@app.route("/select/user")
def select_user():
ulist = User.query.all()
#
# 考虑其它数据传递方法
ulist_json = []
for u in ulist:
ulist_json.append((json.dumps(u, default=user2dict)))
return jsonify(ulist_json)
#
ulist_json.append((json.dumps(u, default=user2dict, ensure_ascii=False)))
return str(ulist_json).replace("'", "")
if __name__ == '__main__':
app.run()
@app.route("/select/diary")
def select_diary():
dlist = Diary.query.all()
dlist_json = []
for u in dlist:
dlist_json.append((json.dumps(u, default=diary2dict, ensure_ascii=False)))
return str(dlist_json).replace("'", "")
if __name__ == '__main__':
app.run('0.0.0.0')

Loading…
Cancel
Save