Ошибки хелпера в Inertia
Допустим, заголовок записи уходит пустым, сервер отклоняет запрос, а на экране не видно, какое поле нужно заполнить. Форма снова перед человеком, но подсказки нет.
После проверки Laravel
сообщения попадают в объект
errors у того же
экземпляра формы, что отправлял
данные. Обращение идёт
по имени поля, как
form.errors.title.
В шаблоне текст выводят
рядом с полем через
условный блок.
Давайте опишем проверку заголовка на сервере:
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use Inertia\Inertia;
Route::get('/posts/create', function () {
return Inertia::render('Posts/Create');
});
Route::post('/posts', function (Request $request) {
$request->validate([
'title' => 'required|string',
]);
return back();
});
?>
Давайте покажем ошибку под полем заголовка:
<script setup>
import { useForm } from '@inertiajs/vue3'
const form = useForm({
title: '',
})
function submit() {
form.post('/posts')
}
</script>
<template>
<form @submit.prevent="submit">
<input
type="text"
v-model="form.title"
/>
<div v-if="form.errors.title">
{{ form.errors.title }}
</div>
<button type="submit">Save</button>
</form>
</template>
Сделайте форму работника Leo так, чтобы при пустой должности под полем было видно сообщение сервера.