public function update(Request $request, Skill $skill) { $tags = $request->input('tags_list'); $input = $request->except('tags_list'); $new_tags = []; foreach ($tags as $tag) { if (!is_numeric($tag)) { $created = Tag::create(['name' => $tag, 'parent_id' => $input['sub_category_id']]); $new_tags[] = $created->id; } else { $new_tags[] = intval($tag); } } $skill->update($input); $skill->tags()->sync($new_tags); Flash::success(trans('profile.skillUpdated')); return redirect(route('profile.skill.edit.step2', $skill->id)); }