示例#1
0
 /**
  * @param Scaffold $scaffold
  * @throws LogicException
  */
 public function apply(Scaffold $scaffold)
 {
     $src = $scaffold->getInput('src');
     $scaffold->excludeInput('src');
     $class = null;
     $arg = null;
     if (is_object($src)) {
         if (is_a($src, '\\Illuminate\\Database\\Eloquent\\Builder')) {
             $class = '\\Nayjest\\Grids\\EloquentDataProvider';
             $arg = $src;
         } elseif (is_a($src, '\\Doctrine\\DBAL\\Query\\QueryBuilder')) {
             $class = '\\Nayjest\\Grids\\DbalDataProvider';
             $arg = $src;
         }
     } elseif (is_string($src)) {
         // model name
         if (class_exists($src, true) && is_subclass_of($src, '\\Illuminate\\Database\\Eloquent\\Model')) {
             $class = '\\Nayjest\\Grids\\EloquentDataProvider';
             $model = new $src();
             $arg = $model->newQuery();
         }
     }
     if ($class !== null && $arg !== null) {
         $provider = new $class($arg);
         $scaffold->input['data_provider'] = $provider;
     } else {
         throw new LogicException('Invalid Data Provider Configuration');
     }
 }
示例#2
0
 public function apply(Scaffold $scaffold)
 {
     $value = $scaffold->getInput($this->input_name);
     if (null !== $value) {
         if ($this->is_exclusive) {
             $scaffold->excludeInput($this->input_name);
         }
         $this->applyInternal($value, $scaffold);
     } elseif (null !== $this->default) {
         $this->applyInternal($this->default, $scaffold);
     }
 }
示例#3
0
文件: Remove.php 项目: suhe/bdoportal
 /**
  * {@inheritdoc}
  */
 public function apply(Scaffold $scaffold)
 {
     if (array_key_exists($this->input_name, $scaffold->input)) {
         $scaffold->excludeInput($this->input_name);
     }
 }