使用场景:
假如我有一个用户列表,每个用户有N篇自己发表的文章,那我要在用户列表中实现一个"查看自己发表文章列表"的按钮,点击按钮后,就可以在新选项卡中只展示自己发表的文章.
这样的功能需求如何实现?
首先在用户列表界面JS中添加"我的文章列表"按钮, 代码如下:
// user/index.html 代码
<table id="table" class="table table-striped table-bordered table-hover table-nowrap"
data-operate-myartile="{:$auth->check('article/index')}"
...其他代码...
width="100%">
</table>
// user.js 代码
Table.api.init({
extend: {
myarticle_url: 'article/index',
...
table: 'user',
}
});
...
// user.js 中table列的 操作列 设置
{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate,buttons:[
{
name:'myarticle',
text:'文章列表',title:function(row){return row.nickname+'发布文章列表'},
classname:'btn btn-xs btn-success btn-dialog',
url:'article/index?user_id={id}' //这一行很关键
},
...其他按钮...
]}
下来是文章列表页代码调整,代码如下: