/** * Store a newly created resource in storage. * * @return Response */ public function store(Request $request) { $model = new Post(); $data = $request->all(); $rules = $this->rules(); $v = Validator::make($data, $rules); if ($v->fails()) { $output = ['error' => true, 'message' => 'Input invalidate!', 'errors' => $v->errors()]; } else { $model->fill($data); if ($model->save()) { $output = ['error' => false, 'message' => 'Created Success!', 'data' => $model->toArray()]; } else { $output = ['error' => true, 'message' => 'Save Failed!']; } } # use queues to send email $message = "A new post have been created"; $job = new SendEmail($message); $this->dispatch($job); return response()->json($output, 200); }