$input */ public function handle(Storeable $settings, array $input): void { $settings->fill($input)->save(); } /** * @return array */ public function rules(): array { /** @var Storeable */ $group = request()->route('settingGroup'); return $group->rules(); } public function asController(ActionRequest $request, Storeable $settingGroup): RedirectResponse { $settingGroup->beforeSave($request); $this->handle($settingGroup, $request->validated()); return redirect()->back(); } }