Имена полей в Livewire
Свои фразы закрывают случай, когда поле оставили пустым. Если сработает другое правило, для которого свой текст не задан, на странице окажется заготовка фреймворка. В ней стоит имя свойства, как оно записано в классе, а не слово, которым поле названо для человека.
Третий аргумент проверки - это словарь: ключ свойства, значение - подпись для текстов ошибок. Если для правила не задан свой текст, в сообщение подставится именно эта подпись.
Давайте потребуем у заголовка хотя бы три символа, чтобы сработала заготовка фреймворка, и передадим словарь подписей вместе с прежними правилами и своими строками для пустых полей:
<?php
namespace App\Livewire;
use App\Models\Post;
use Livewire\Component;
class PostForm extends Component
{
public $title = '';
public $body = '';
public function save()
{
$this->validate([
'title' => 'required|min:3',
'body' => 'required',
], [
'title.required' => 'Enter a title',
'body.required' => 'Enter a text',
], [
'title' => 'heading',
'body' => 'text',
]);
Post::create([
'title' => $this->title,
'body' => $this->body,
]);
$this->reset();
}
public function render()
{
return view('livewire.post-form');
}
}
?>
Сделайте так, чтобы в тексте ошибки было человеческое имя поля работника, а не имя свойства.