Laravel расширенные - HTML формы

04.11.2019 07:17:05

Для удобной работы с HTML формами в Laravel существует пакет Laravel Collective ниже пара примеров его использования.

Если Вам нужно, в Laravel 6, сделать форму с элементами управления, то данный пакет может сильно упростить работу.
Подробно с ним можно ознакомиться по ссылке Laravel Collective, а я изложу только базис:

Установка:

 
composer require laravelcollective/html

Формы

Далее можно вместо:

 
<form action="{{route('posts.update', $post->id)}}" method="post" enctype="multipart/form-data" >
    @csrf
    @method('PUT')
...
    <input type="file" name="file_img" />
...
</form>

использовать:

 
{{ Form::open(['route' => ['posts.update', $post->id], 'method' => 'put', 'enctype' => 'multipart/form-data']) }}
...
{!! Form::file('file_img') !!}
...
{{ Form::close() }}

@csrf и @method('PUT') - уже включены.

Select

Код для выпадающего списка:

 
<?=Form::select('published', [0 => 'Нет', '1' => 'Да'], $post->published);?>
</form>

вместо подобного:

 
                <select name="published" id="published">
                    <option value="0"
@if ($post->published == 0)
    selected="selected"
@endif
                    >Нет</option>
                    <option value="1"
@if ($post->published == 1)
    selected="selected"
@endif
                    >Да</option>
                </select>


Категории: Laravel
Яндекс.Метрика