Example #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @return PaulVL\JsonApi\Response
  */
 public function store(Request $request)
 {
     $class = $this->model_class;
     $response = new Response();
     $inputs = ArrayHelper::empty_to_null($request->all());
     if (method_exists($this, 'arrangeInputs')) {
         $inputs = $this->arrangeInputs($inputs);
     }
     $validator = Validator::make($inputs, $class::getRules());
     if ($validator->fails()) {
         $validation_errors = StringHelper::concatInOneLine($validator->errors()->all(), ' ');
         return $response->responseUnprocessableEntity($validation_errors);
     }
     if (method_exists($this, 'saveData')) {
         return $this->saveData($inputs);
     } else {
         try {
             $object = $class::create($inputs);
             return $response->responseCreated();
         } catch (Exception $e) {
             return $response->responseInternalServerError();
         }
     }
 }