public function update(Poll $poll, Request $request) { $validator = Validator::make($request->all(), ['title' => 'required|max:50', 'question' => 'required|max:255']); if ($validator->fails()) { return ['hasCallback' => 0, 'callback' => '', 'hasMsg' => 1, 'msgType' => 'danger', 'msg' => $validator->errors()->first(), 'returns' => '']; } $input = $request->except('tags_list', '_token', 'main_category'); $poll->update($input); if (!$request->has('tags_list')) { $poll->tags()->detach(); } else { $tags_list = $request->only('tags_list'); $poll->tags()->sync(array_flatten($tags_list)); } return ['hasCallback' => 0, 'callback' => '', 'hasMsg' => 1, 'msg' => 'Poll updated Successfull', 'returns' => '']; }