zoukankan      html  css  js  c++  java
  • 1.6个人中心新闻列表

    效果如下(展示用户所有发布得新闻,新闻状态,分页

    1、前端代码

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>用户中心</title>
     6     <link rel="stylesheet" type="text/css" href="../../static/news/css/reset.css">
     7     <link rel="stylesheet" type="text/css" href="../../static/news/css/jquery.pagination.css">
     8     <link rel="stylesheet" type="text/css" href="../../static/news/css/main.css">
     9     <script type="text/javascript" src="../../static/news/js/jquery-1.12.4.min.js"></script>
    10     <script type="text/javascript" src="../../static/news/js/jquery.pagination.min.js"></script>
    11 </head>
    12 <body class="inframe_body">
    13     <div class="news_list">
    14         <h3>新闻列表</h3>
    15         <ul class="article_list">
    16             {% for news in context.news_list %}
    17             <li>
    18                 {% if news.status == 0 %}
    19                     {# 审核通过 #}
    20                     <a href="#">{{ news.title }}</a><em class="pass">已通过</em><span>{{ news.create_time }}</span>
    21                 {% elif news.status == 1 %}
    22                     {# 审核中 #}
    23                     <a href="javascript:;">{{ news.title }}</a><em class="review">审核中</em><span>{{ news.create_time }}</span>
    24                 {% else %}
    25                     {# 审核不通过 #}
    26                     <a href="javascript:;">{{ news.title }}</a><em class="nopass">未通过</em><span>{{ news.create_time }}</span>
    27                     <b>未通过原因:{{ news.reason }}</b>
    28                 {% endif %}
    29                 </li>
    30             {% endfor %}
    31         </ul>
    32         <div id="pagination" class="page"></div>
    33         <script>
    34             // 调用父页面的方法改变菜单指示
    35             // window.parent.fnChangeMenu(2);
    36 
    37             $(function(){
    38                 $("#pagination").pagination({
    39                     currentPage: {{ context.current_page }},
    40                     totalPage: {{ context.total_page }},
    41                     callback: function(current) {
    42                         window.location.href = '/user/user_news_list?p=' + current;
    43                     }
    44                 });
    45             });
    46         </script>
    47 
    48     </div>
    49 </body>
    50 </html>

    2、后台代码

     1 @user_blue.route("/user_news_list")
     2 @user_login_data
     3 def user_news_list():
     4     user = g.user
     5     if not user:
     6         return redirect(url_for('index.index'))
     7     page = request.args.get("p",1)
     8     try:
     9         # 将接收来的参数强转为int类型
    10         page = int(page)
    11     except Exception as e:
    12         current_app.logger.error(e)
    13         # 二次保障设置默认值为1
    14         page = 1
    15     #给变量赋值默认值
    16     news_li = []
    17     current_page = 1
    18     total_page = 1
    19     try:
    20         #数据库查询,分页器
    21         paginate = News.query.filter(News.user_id == user.id).paginate(page = page, per_page=2)
    22         news_li = paginate.items
    23         current_page = paginate.page
    24         total_page = paginate.pages
    25     except Exception as e:
    26         current_app.logger.error(e)
    27         return jsonify(errno=RET.DATAERR, errmsg="查询失败")
    28     
    29     #传递上下文
    30     context = {
    31         "news_list":news_li,
    32         "current_page":current_page,
    33         "total_page":total_page,
    34     }
    35     #渲染页面
    36     return render_template("news/user_news_list.html",context = context)
  • 相关阅读:
    (转)Esri微博地址收录
    使用liquibasemavenplugin实现持续数据库集成
    CenOS系统中安装Tomcat7并设置为自启动服务
    Androidx86虚拟机安装配置全攻略
    jdk8根据某一属性去重方法 Collectors.collectingAndThen
    [转]恶心的C语言strtok函数
    人生七日忠告 人生征途须记
    VTK中二维Delaunay三角剖分
    Python编程题41原地反转字符串
    Python编程题42除自身以外元素的乘积
  • 原文地址:https://www.cnblogs.com/Hdwmsyqdm/p/14005019.html
Copyright © 2011-2022 走看看