博客项目学习笔记十八:用户中心(我收藏的帖子)

博客项目目录: 请戳这里

准备

需求:用户登录后,进入用户中心页面,显示如下信息,当点击“加载更多”,会把当前页的下一页加载出来。
在这里插入图片描述

1.在controller层添加对应方法

根据当前账户id,在收藏表进行查询,得到收藏文章的id,再根据这些文章id从文章表取出对应的文章。

	//我收藏的帖子
    @ResponseBody
    @GetMapping("/user/collection")
    public Result collection() {
        IPage page = postService.page(getPage(), new QueryWrapper<Post>()
                .inSql("id", "SELECT post_id FROM user_collection where user_id = " + getProfileId())
        );
        return Result.success(page);
    }

2.修改user下的index.ftl

  • 修改收藏的帖子对应的部分
<ul class="mine-view jie-row" id="collection">
    <script id="tpl-collection" type="text/html">
        <li>
            <a class="jie-title" href="/post/{{d.id}}" target="_blank">{{d.title}}</a>
            <i>收藏于{{layui.util.timeAgo(d.created, true)}}</i>
        </li>
    </script>
</ul>
  • 添加对应的flow方法
flow.load({
              elem: '#collection'
              ,isAuto: false
              ,done: function(page, next){
                  var lis = [];

                  $.get('/user/collection?pn='+page, function(res){
                      layui.each(res.data.records, function(index, item){

                          var tpl = $("#tpl-collection").html();
                          laytpl(tpl).render(item, function (html) {
                              $("#collection .layui-flow-more").before(html);
                          });
                      });

                      next(lis.join(''), page < res.data.pages);
                  });
              }
          });

3.测试

进入用户中心,我收藏的帖子:
在这里插入图片描述
点击加载更多:
在这里插入图片描述

参考资料:

https://github.com/MarkerHub/eblog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值