def delete(): """执行系统通知的删除操作""" u = current_user() info_id = int(request.form.get('info_id', -1)) i: Info = Info.one(id=info_id) if i is not None: # 权限验证 if i.receiver_id == u.id: Info.delete(i) key = 'user_id_{}.received_info'.format(u.id) data_cache.delete(key) return redirect(url_for('.info')) return abort(404)
def sweep(): """清理所有已读信息""" u = current_user() owner_id = int(request.form.get('owner_id', -1)) owner = cached_user_id2user(owner_id) if owner is not None: if owner_id == u.id: read_infos = Info.all(receiver_id=owner_id, been_read=True) with data_cache.pipeline(transaction=False) as pipe: for i in read_infos: Info.delete(i) key = 'user_id_{}.received_info'.format(u.id) pipe.delete(key) pipe.execute() return redirect(url_for('.info'))