Bence user bilgilerini ayrı bir formda düzenletmek, ayarları ayrı bir formda düzenletmek daha sağlıklı olur.
Bahsettiğiniz durum da Laravel içinde bunun için bir yol var mı bilmiyorum fakat ben olsam UserPostRequest ve UserSettingRequest sınıflarımda static bir method yazar ve rules leri buradan alırdım. Sonra da merge etmem gereken yerde bunları merge ederdim.
Örnek UserPostRequest:
public static function getRules()
{
return [
"title" => ["required", "string", "max:255"],
"content" => ["required", "string", "min:50", "max:5000"]
];
}
public function rules()
{
return self::getRules();
}
Örnek UserSettingRequest:
public static function getRules()
{
return [
"commentable" => ["required", "boolean"],
//....
];
}
public function rules()
{
return self::getRules();
}
Örnek olarak bunları merge etmem gereken yerde:
public function rules()
{
return array_merge(
UserPostRequest::getRules(),
UserSettingRequest::getRules(),
);
}