예제 #1
0
 /**
  *
  */
 public function findAll(\Gacela\DataSource\Query\Query $query, \Gacela\DataSource\Resource $resource, array $inherits, array $dependents)
 {
     if (!count($query->from) > 0) {
         $query->from($resource->getName(), array_keys($resource->getFields()));
     }
     return $this->query($resource, $query);
 }
예제 #2
0
 protected function _buildFinder(\Gacela\DataSource\Query\Query $query, \Gacela\DataSource\Resource $resource, array $inherits, array $dependents)
 {
     $include_columns = false;
     if (count($query->from) == 0) {
         $query->from($resource->getName());
         $include_columns = true;
     }
     foreach ($inherits as $relation) {
         $this->_buildJoin($relation, $query, 'inner', $include_columns);
     }
     foreach ($dependents as $relation) {
         $this->_buildJoin($relation, $query, 'left', $include_columns);
     }
     return $query;
 }