def index(): if request.method == 'GET': msg = '获取成功' pictures = [] for picture in glob.glob(os.getcwd() + '/image/index_image/*.jpg'): pictures.append(imageToStr(picture)) return jsonify(pictures=pictures, msg=msg) else: msg = '筛选失败' data = json.loads(request.data) likes = data['like'] dislikes = data['dislike'] # price = data['price'] error = None if not likes: error = '请输入合适的筛选条件' if error is None: msg = '筛选成功' pictures = [] for picture in glob.glob(os.getcwd() + '/image/index_image/*.jpg'): name = picture.split('/')[-1].split('.')[0].split('_') for like in likes: if str(like) in name: for dislike in dislikes: if str(dislike) not in name: pictures.append(imageToStr(picture)) return jsonify(pictures=pictures, msg=msg, error=error) return jsonify(msg=msg, error=error)
def get_one(): p_id = Request(request, 'p_id').load() # form = json.loads(request.data) # p_id = int(form['p_id']) msg = '获取失败' error = None db = get_db() post = db.execute( 'SELECT p.id, nickname, liker, like, title, body, created, image' ', image_size, image_compressed, comment, author_id' ' FROM post p JOIN user u ON p.author_id = u.id' ' WHERE p.id = ?', (p_id, )).fetchone() if post is None: error = '该blog不存在' if error is None: msg = '获取成功' blog = {} infos = [ 'id', 'title', 'body', 'created', 'author_id', 'nickname', 'like', 'comment' ] for info in infos: blog[info] = post[info] blog['image'] = [] blog['image_size'] = post['image_size'] img_compressed = post['image_compressed'].split(',') for i, img in enumerate(post['image'].split(',')): if img_compressed[i]: blog['image'].append(imageToStr(get_outfile(os.getcwd() + img))) else: blog['image'].append(imageToStr(os.getcwd() + img)) # blog['image'] = ','.join(blog['image']) blog['likers'] = [] if post['like'] != 0: likers = post['liker'].split(',')[1:] for liker in likers: u_id = int(liker) nickname = db.execute('SELECT * FROM user WHERE id = ?', (u_id, )).fetchone()['nickname'] blog['likers'].append({'id': u_id, 'nickname': nickname}) comments = post['comment'].split('.')[:-1] blog['comment'] = [] for comment in comments: comment = comment.split(',') u_id = int(comment[0]) nickname = db.execute('SELECT * FROM user WHERE id = ?', (u_id, )).fetchone()['nickname'] blog['comment'].append({ 'id': u_id, 'nickname': nickname, 'comment': base64.b64decode(comment[1]) }) return jsonify(blog=blog, msg=msg) return jsonify(error=error, msg=msg)
def get_all(): msg = '获取成功' db = get_db() posts = db.execute( 'SELECT p.id, title, body, created, author_id, nickname,' ' like, liker, image, image_size, image_compressed, comment' ' FROM post p JOIN user u ON p.author_id = u.id' ' ORDER BY created DESC').fetchall() blogs = [] print(len(posts)) for post in posts: blog = {} infos = [ 'id', 'title', 'body', 'created', 'author_id', 'nickname', 'like', 'comment' ] for info in infos: blog[info] = post[info] blog['image'] = [] blog['image_size'] = post['image_size'] if post['image']: print(blog['image_size']) img_compressed = post['image_compressed'].split(',') for index, img in enumerate(post['image'].split(',')): # print(img_compressed[index]) if int(img_compressed[index]): blog['image'].append( imageToStr(get_outfile(os.getcwd() + img))) else: blog['image'].append(imageToStr(os.getcwd() + img)) # blog['image'] = ','.join(blog['image']) blog['likers'] = [] if post['like'] != 0: likers = post['liker'].split(',')[1:] for liker in likers: u_id = int(liker) nickname = db.execute('SELECT * FROM user WHERE id = ?', (u_id, )).fetchone()['nickname'] blog['likers'].append({'id': u_id, 'nickname': nickname}) comments = blog['comment'].split('||')[:-1] blog['comment'] = [] for comment in comments: comment = comment.split(',') u_id = int(comment[0]) nickname = db.execute('SELECT * FROM user WHERE id = ?', (u_id, )).fetchone()['nickname'] blog['comment'].append({ 'id': u_id, 'nickname': nickname, 'comment': base64.b64decode(comment[1]) }) blogs.append(blog) return jsonify(blogs=blogs, msg=msg)
def query_flower(): import_flower('玫瑰花', 'rose', '主花', '爱情', '1.jpg', '暂无描述', '康乃馨', '满天星, 百合', 10) form = json.loads(request.data) msg = '查询失败' error = None flower_name = form['flower_name'] db = get_db() Flower = db.execute('SELECT * FROM flower WHERE cn_name = ?', (flower_name, )).fetchone() if Flower is None: error = '该花不存在' if error is None: msg = '查询成功' image = imageToStr(os.getcwd() + Flower['image']) return jsonify({ 'msg': msg, 'error': error, 'cn_name': Flower['cn_name'], 'en_name': Flower['en_name'], 'type': Flower['type'], 'flower_language': Flower['flower_language'], 'similar': Flower['similar'], 'combined': Flower['combined'], 'image': image, 'description': Flower['description'], 'price': Flower['price'] }) return jsonify({'msg': msg, 'error': error})
def login(): form = json.loads(request.data) phone_number = form['phone_number'] password = form['password'] db = get_db() error = None msg = '登陆失败' user = db.execute('SELECT * FROM user WHERE phone_number = ?', (phone_number, )).fetchone() if user is None: error = '该用户不存在' elif not check_password_hash(user['password'], password): error = '密码错误' if error is None: msg = '登陆成功.' if user['ip'] != '': msg += '用户在另一ip已登录 {}'.format(user['ip']) db.execute('UPDATE user SET ip = ?' ' WHERE id = ?', (request.remote_addr, user['id'])) db.commit() head = imageToStr(os.getcwd() + user['head']) return jsonify({ 'msg': msg, 'id': user['id'], 'phone_number': phone_number, 'password': password, 'error': error, 'nickname': user['nickname'], 'level': user['level'], 'EXPoint': user['EXPoint'], 'friend': user['friend'], 'personal_description': user['personal_description'], 'sex': user['sex'], 'age': user['age'], 'region': user['region'], 'head': head }) return jsonify({'msg': msg, 'phone_number': phone_number, 'error': error})
def query_user(): form = json.loads(request.data) id, user = check_status(request) type = form['type'] # 按昵称或手机号查询 User_index = form['User'] # 昵称或手机号 msg = '查询失败' error = None if user is None: error = '请先登录' elif type not in ['nickname', 'phone_number', 'id']: error = '查询方式错误' elif not User_index or User_index == 'None': error = '请输入用户' if error is None: db = get_db() Users = db.execute('SELECT * FROM user WHERE ' + type + ' = ?', (User_index, )).fetchall() if Users is None: error = '用户不存在' if error is None: msg = '查询成功' users = [] for User in Users: head = imageToStr(os.getcwd() + User['head']) users.append({ 'msg': msg, 'phone_number': User['phone_number'], 'nickname': User['nickname'], 'level': User['level'], 'EXPoint': User['EXPoint'], 'personal_description': User['personal_description'], 'sex': User['sex'], 'age': User['age'], 'region': User['region'], 'head': head }) return jsonify({'users': users, 'msg': msg}) return jsonify({'msg': msg, 'error': error})