コード例 #1
0
 /**
  * Retrieves query builder for root (with no ancestors) models.
  *
  * @return \Franzose\ClosureTable\Extensions\Collection
  */
 public static function collectRoots()
 {
     /**
      * @var Entity $instance
      */
     $instance = new static();
     return $instance->whereNull($instance->getParentIdColumn());
 }
コード例 #2
0
 /**
  * Retrieves root (with no ancestors) models.
  *
  * @param array $columns
  * @return \Franzose\ClosureTable\Extensions\Collection
  */
 public static function getRoots(array $columns = ['*'])
 {
     /**
      * @var Entity $instance
      */
     $instance = new static();
     return $instance->whereNull($instance->getParentIdColumn())->get($columns);
 }
コード例 #3
0
 /**
  * Retrieves entire tree.
  *
  * @param array $columns
  * @return \Franzose\ClosureTable\Extensions\Collection
  */
 public static function getTree(array $columns = ['*'])
 {
     /**
      * @var Entity $instance
      */
     $instance = new static();
     return $instance->orderBy($instance->getParentIdColumn())->orderBy($instance->getPositionColumn())->get($instance->prepareTreeQueryColumns($columns))->toTree();
 }