code: async function count(ctx) {
    let { Model } = ctx.state;
    let code = Model.api.count;
    if (code > _alaska.PUBLIC && !ctx.user) {
      //未登录,需要认证
      ctx.status = 401;
      return;
    }
    let filters = await Model.createFiltersByContext(ctx);
  
    if (code === _alaska.OWNER) {
      //只允许用户列出自己的资源
      let { userField } = Model;
      // $Flow 这里可以确认ctx.user存在
      filters[userField] = ctx.user._id;
    }
  
    ctx.body = {
      count: await Model.count(filters)
    };
  }
docs: REST接口默认控制器
  本控制器默认关闭,开启默认REST接口,需要将Service配置中的api项设置为true,并且打开各个模型的设置
  例如 `User.api=false` 将关闭User模型所有的默认REST接口
  `User.api={list:1,show:1}` 将只打开list和show接口
  不同的数值代表:
  > list接口        1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户列出自己的资源
  > paginate接口    1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户列出自己的资源
  > show接口        1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许资源所有者调用
  > count接口       1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户统计自己的资源
  > create接口      1:允许匿名调用此接口 2:允许认证后的用户调用
  > update接口      1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户更新自己的资源
  > updateMulti接口 1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户更新自己的资源
  > remove接口      1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户删除自己的资源
  > removeMulti接口 1:允许匿名调用此接口 2:允许认证后的用户调用 3:只允许用户删除自己的资源
   
  统计接口