当前位置: 首页>>代码示例>>PHP>>正文


PHP Project::paginate方法代码示例

本文整理汇总了PHP中app\models\Project::paginate方法的典型用法代码示例。如果您正苦于以下问题:PHP Project::paginate方法的具体用法?PHP Project::paginate怎么用?PHP Project::paginate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在app\models\Project的用法示例。


在下文中一共展示了Project::paginate方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: index

 /**
  * Return a paginated list of projects
  * 
  * @return \Dingo\Api\Http\Response
  */
 public function index()
 {
     $projects = Project::paginate(app('request')->get('per_page', 10));
     $queryParams = array_diff_key($_GET, array_flip(['page']));
     $projects->appends($queryParams);
     return $this->response->paginator($projects, new ProjectTransformer());
 }
开发者ID:missionsme,项目名称:projects,代码行数:12,代码来源:ProjectsController.php

示例2: projects

 public function projects($search = null, $categories = null, $orderby = null, $paginate = true)
 {
     $result = null;
     /**
      * As buscas não são complementares: ou se filtra por termo ou por categoria(s)
      * mas nunca por ambos.
      */
     if ($paginate) {
         /**
          * SEARCH
          * Se existe um termo de busca, retorna a lista filtrada pelo termo
          */
         if (!is_null($search) && !empty($search)) {
             return Project::where('name', 'like', "%{$search}%")->paginate(env('PAGINATION_ITEMS', 10));
         }
         /**
          * CATEGORIES
          * Se existe uma ou mais categoria(s), retorna a lista filtrada por ela(s)
          */
         if (!is_null($categories) && !empty($categories)) {
             /**
              * Compila-se uma lista distinta projetos associados às caregorias informadas
              */
             $projectsFromCategories = DB::table('category_project')->whereIn('category_id', $categories)->distinct()->get(['project_id']);
             $projectIds = [];
             /**
              * Compila-se uma lista apenas com os IDs dos projetos pois
              * a lista acima possui array com objetos: [0 => StdClass('project_id': 1)]
              */
             foreach ($projectsFromCategories as $value) {
                 $projectIds[] = $value->project_id;
             }
             /**
              * Por fim retorna-se a lista dos projetos
              */
             return Project::whereIn('id', $projectIds)->paginate(env('PAGINATION_ITEMS', 10));
         }
         /**
          * ORDER BY
          * Se existe ordenação, retorna a lista ordenada pela instrução recebida
          */
         if (!is_null($orderby) && !empty($orderby)) {
             $order = explode('|', $orderby);
             return Project::orderBy($order[0], $order[1])->paginate(env('PAGINATION_ITEMS', 10));
         }
         /**
          * Caso nem exista nem termo de busca nem categorias, retorna-se a lista completa, paginada.
          */
         return Project::paginate(env('PAGINATION_ITEMS', 10));
     }
     /**
      * Este, sem paginação, visa atender à API
      */
     return Project::where('name', 'like', "%{$search}%")->get();
 }
开发者ID:ronal2do,项目名称:dave_brubeck,代码行数:55,代码来源:ProjectRepository.php


注:本文中的app\models\Project::paginate方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。