예제 #1
0
def getbooks():
    if request.method == 'GET':
        sql = 'select * from vue_books;'
        books = db.session.execute(sql)
        books = Book.query.all()
        books = myutils.to_json(books)
        return jsonify(books)
예제 #2
0
def get_all_blogs():
    try:
        sql = 'select * from Blog;'
        blogs = db.session.execute(sql)
        blogs = Blog.query.order_by(-Blog.create_time)
        blogs = myutils.to_json(blogs)
        state = {"status": "200", "msg": "成功从数据库拿到数据~"}
        blogs.insert(0, state)
        return Response(json.dumps(blogs), mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取数据发生异常~"})
예제 #3
0
def getAuthors():
    try:
        sql = 'select * from Author;'
        authors = db.session.execute(sql)
        authors = Author.query.filter().all()
        authors = myutils.to_json(authors)
        state = {"status": "200", "msg": "成功从数据库拿到数据~"}
        authors.insert(0, state)
        print(authors)
        return Response(json.dumps(authors), mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取数据发生异常~"})
예제 #4
0
def get_single_blog():
    try:
        id = request.args.get('id')
        blog = Blog.query.filter(Blog.id == id)
        blog = myutils.to_json(blog)
        authorId = blog[0]['authorId']
        author = Author.query.filter(Author.id == authorId).first()
        blog[0]['author'] = author.user_name
        state = {"status": "200", "msg": "成功从数据库拿到数据~"}
        blog.insert(0, state)
        return Response(json.dumps(blog), mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取数据发生异常~"})
예제 #5
0
def edit_book(book_id):
    data = request.get_json()
    author = data['author']
    title = data['title']
    read = data['read']
    book = Book.query.filter(Book.id == book_id).first()
    book.title = title
    book.author = author
    book.read = read
    db.session.commit()
    book = Book.query.filter(Book.id == book_id)
    book = myutils.to_json(book)
    return jsonify('success')
예제 #6
0
def get_personal_blogs():
    data = request.get_json()
    userName = data['user'].split(':')[1][1:-2]
    author = Author.query.filter(Author.user_name == userName).first()
    authorId = author.id
    try:
        blogs = Blog.query.filter(Blog.authorId == authorId)
        blogs = myutils.to_json(blogs)
        blogs = myutils.sortBlogsByTime(blogs)
        state = {"status": "200", "msg": "成功从数据库拿到数据~"}
        blogs.insert(0, state)
        return Response(json.dumps(blogs), mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取数据发生异常~"})
예제 #7
0
def get_favorite_blogs():
    data = request.get_json()
    userName = data['user'].split(':')[1][1:-2]
    author = Author.query.filter(Author.user_name == userName).first()
    try:
        favoriteBlogs = []
        if '|' in author.favoriteBlogs:
            blogs = author.favoriteBlogs.split('|')
        else:
            blogs = [author.favoriteBlogs]
        for blogid in blogs:
            blog = Blog.query.filter(Blog.id == blogid)
            if blog:
                blog = myutils.to_json(blog)
                favoriteBlogs.extend(blog)
        favoriteBlogs = myutils.sortBlogsByTime(favoriteBlogs)
        state = {"status": "200", "msg": "成功从数据库拿到数据~"}
        favoriteBlogs.insert(0, state)
        return Response(json.dumps(favoriteBlogs), mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取数据发生异常~"})
예제 #8
0
def submitComment():
    data = request.get_json()
    userName = data['user'].split(':')[1][1:-2]
    blogId = data['blogId']
    blog = Blog.query.filter(Blog.id == blogId).first()
    comment = data['comment']
    author = Author.query.filter(Author.user_name == userName).first()
    authorId = author.id
    id = myutils.createRandomString(10)
    try:
        comment = Comment(id=id,
                          author=author,
                          content=comment,
                          blogId=blogId,
                          authorId=authorId,
                          blog=blog)
        db.session.add(comment)
        db.session.commit()
    except:
        db.session.rollback()
    try:
        comments = Comment.query.filter(
            Comment.blogId == blogId).order_by(-Comment.create_time).all()
        comments = myutils.to_json(comments)
        return_comments = []
        for i in range(len(comments)):
            temp = {}
            author = Author.query.filter(
                Author.id == comments[i]['authorId']).first()
            name = author.user_name
            temp['authorName'] = name
            temp['createTime'] = comments[i]['create_time']
            temp['content'] = comments[i]['content']
            return_comments.append(temp)
        state = {"status": "200", "msg": "成功拿到评论啦~"}
        return_comments.insert(0, state)
        return Response(json.dumps(return_comments),
                        mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取评论数据发生异常~"})
예제 #9
0
def get_comments(id=None):
    try:
        blogId = request.args.get('id')
        comments = Comment.query.filter(
            Comment.blogId == blogId).order_by(-Comment.create_time).all()
        comments = myutils.to_json(comments)
        # print(comments)
        return_comments = []
        for i in range(len(comments)):
            temp = {}
            author = Author.query.filter(
                Author.id == comments[i]['authorId']).first()
            name = author.user_name
            temp['authorName'] = name
            temp['createTime'] = comments[i]['create_time']
            temp['content'] = comments[i]['content']
            return_comments.append(temp)
        state = {"status": "200", "msg": "成功拿到评论啦~"}
        return_comments.insert(0, state)
        return Response(json.dumps(return_comments),
                        mimetype='application/json')
    except:
        return jsonify({"status": "400", "msg": "获取评论数据发生异常~"})
예제 #10
0
def get_book(book_id):
    book = Book.query.filter(Book.id == book_id)
    book = myutils.to_json(book)
    return jsonify(book)
예제 #11
0
 def test2(self):
     obj = {"id": 100500, "name": "ahaha", "marks": [5, 7, 5, 8],  "is_valid": True}
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #12
0
 def test6(self):
     obj = {True: 1}
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #13
0
 def test4(self):
     obj = '\'\"'
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #14
0
 def test7(self):
     obj = '\\'
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #15
0
 def test8(self):
     obj = None
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #16
0
 def test9(self):
     obj = [None, {1: ["1", {"2": 2}]}, False, 3, "3"]
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #17
0
 def test10(self):
     obj = {'None': 1}
     self.assertEqual(to_json(obj), json.dumps(obj))
예제 #18
0
 def test3(self):
     obj = {None: 1}
     self.assertEqual(to_json(obj), json.dumps(obj))