2.4. Формы
Поскольку формы являются основой большинства веб-приложений, Livewire предоставляет множество полезных утилит для их создания. От обработки простых элементов ввода до сложных функций, таких как валидация в реальном времени или загрузка файлов — Livewire предлагает простые и хорошо задокументированные инструменты, которые облегчат вашу работу и порадуют ваших пользователей.
Давайте начнём.
1. Отправка формы
Начнём с рассмотрения очень простой формы в компоненте CreatePost. Эта форма будет содержать два простых текстовых поля и кнопку отправки, а также некоторый код на серверной стороне для управления состоянием и отправкой формы:
<?php namespace App\Livewire; use Livewire\Component;use App\Models\Post; class CreatePost extends Component{ public $title = ''; public $content = ''; public function save() { Post::create( $this->only(['title', 'content']) ); session()->flash('status', 'Post successfully updated.'); return $this->redirect('/posts'); } public function render() { return view('livewire.create-post'); }}
<form wire:submit="save"> <input type="text" wire:model="title"> <input type="text" wire:model="content"> <button type="submit">Save</button></form>