text: from flask import jsonify,request,current_app,url_for
  from . import api
  from ..models import User,Post
  
  @api.route('/users/<int:id>')
  def get_user(id):
      user = User.query.get_or_404(id)
      return jsonify(user.to_json())
  
  @api.route('/users/<int:id>/posts/')
  def get_user_posts(id):
      user = User.query.get_or_404(id)
      page = request.args.get('page',1,type=int)
      pagination = user.posts.order_by(Post.timestamp.desc()).paginate(
          page,per_page=current_app.config['FLASKY_POSTS_PER_PAGE'],
          error_out=False
      )
      posts = pagination.items
      prev = None
      if pagination.has_prev:
          prev = url_for('api.get_user_posts',page=page-1,_external=True)
      next = None
      if pagination.has_next:
          next = url_for('api.get_user_posts',page=page+1,_external=True)
      return jsonify({
          'posts':[post.to_json() for post in posts],
          'prev':prev,
          'next':next,
          'count':pagination.total
      })
  @api.route('/user/<int:id>/timeline/')
  def get_user_followed_posts(id):
      user = User.query.get_or_404(id)
      page = request.args.get('page',1,type=int)
      pagination = user.followed_posts.order_by(Post.timestamp.desc()).paginate(
          page,per_page=current_app.config['FLASKY_POSTS_PER_PAGE'],error_out=False
      )
      posts = pagination.items
      prev = None
      if pagination.has_prev:
          prev = url_for('apr.get_user_followed_posts',page=page-1,_external=True)
      next = None
      if pagination.has_next:
          next = url_for('api.get_user_followed_posts',page=page+2,_external=True)
      return jsonify({
          'posts':[post.to_json() for post in posts],
          'prev':prev,
          'next':next,
          'count':pagination.total
      })