Beispiel #1
0
 protected function setUpModel(\Illuminate\Http\Request $request)
 {
     $uri = $request->route()->uri();
     $modelSlug = strpos($uri, '/') ? substr($uri, 0, strpos($uri, '/')) : $uri;
     $modelName = ucfirst(camel_case(str_singular($modelSlug)));
     $modules = new \Ormic\Modules();
     $module = $modules->getModuleOfModel($modelName);
     if ($module) {
         $modelClass = 'Ormic\\modules\\' . $module . '\\Model\\' . $modelName;
         $viewName = snake_case($module) . '::' . snake_case($modelName) . '.' . $this->currentAction;
     } else {
         $modelClass = 'Ormic\\Model\\' . $modelName;
         $viewName = snake_case($modelName) . '.' . $this->currentAction;
     }
     $this->model = new $modelClass();
     $this->model->setUser($this->user);
     try {
         $this->view = view($viewName);
     } catch (\InvalidArgumentException $ex) {
         try {
             $this->view = view('models.' . $this->currentAction);
         } catch (\InvalidArgumentException $ex) {
             // Still no view; give up.
             $this->view = view();
         }
     }
     $this->view->title = ucwords(str_replace('-', ' ', $modelSlug));
     $this->view->modelSlug = $modelSlug;
     $this->view->columns = $this->model->getColumns();
     $this->view->record = $this->model;
 }