$request->first_name, 'email' => $request->email, 'password' => Hash::make($request->password), ]); UserDetailz::create($this->buildUserDetailz($request, $newUser)); CircumferenceMeasure::create([ 'user_id' => $newUser->id, 'chest_circumference' => $request->chest_circumference, 'waist_circumference' => $request->waist_circumference, 'hip_circumference' => $request->hip_circumference, ]); } private function buildUserDetailz(RegisterRequest $request, User $newUser): array { $userDetailzData = []; $fields = [ 'first_name', 'last_name', 'birthdate', 'gender', 'country', 'city', 'lang', 'weight', 'height', 'chest_circumference', 'waist_circumference', 'hip_circumference', 'blood_pressure_up', 'blood_pressure_down', 'has_hypo', 'has_hyper', 'about_alergy', 'about_taking_pils', 'about_sport_hobbies', 'favorite_foods', 'unfavorite_foods', 'additional_info', 'is_mood_fillable', 'is_bedtime_fillable', ]; foreach ($fields as $field) { $userDetailzData[$field] = $request->{$field}; } $userDetailzData['user_id'] = $newUser->id; return $userDetailzData; } }