LaravelPackages.net
Acme Inc.
Toggle sidebar
i80586/laravel-form-fields

Laravel form fields generator - for admin panels

1.267
4
v2.1.2
About i80586/laravel-form-fields

i80586/laravel-form-fields is a Laravel package for laravel form fields generator - for admin panels. It currently has 4 GitHub stars and 1.267 downloads on Packagist (latest version v2.1.2). Install it with composer require i80586/laravel-form-fields. Discover more Laravel packages by i80586 or browse all Laravel packages to compare alternatives.

Last updated

laravel-form-fields

A fluent form field generator for Laravel

Latest Version Build Status Downloads


🚀 About

laravel-form-fields provides a fluent, expressive API for generating form fields in Laravel.

Version 2 introduces a builder-style syntax, replacing array-based configuration with readable method chaining.


📋 Requirements

  • PHP >= 8.3
  • Laravel >= 10

📦 Installation

composer require i80586/laravel-form-fields

Basic usage

{!! form()->input('name') !!}

Output:

<label for="name">Name</label>
<input type="text" name="name" id="name" class="form-control">

Setting default value:

{!! form()->input('name', 'John') !!}

This will output:

<label for="name">Name</label>
<input type="text" name="name" id="name" class="form-control" value="John">

Change the text of the default label

{!! form()->input('name')->label('Your name') !!}

This will output:

<label for="name">Your name</label>
<input type="text" name="name" id="name" class="form-control">

Multiple CSS classes

You can pass multiple CSS classes in a single call:

{!! form()
    ->input('name', 'John')
    ->label(false)
    ->required()
    ->class('form-control', 'name-select')
!!}

or

{!! form()
    ->input('name', 'John')
    ->label(false)
    ->required()
    ->class(['form-control', 'name-select'])
!!}

This will output:

<input type="text" name="name" id="name" value="John" class="form-control name-select" required>

Select

{!! form()->select('city', 1, [1 => 'Baku'], 'Choose city') !!}

This will output:

<label for="city">City</label>
<select name="city" id="city" class="form-select">
<option value>Choose city</option>    
<option value="1" selected>Baku</option>    
</select>

Old input support

Form fields automatically use Laravel old() values after validation errors.

You do not need to manually call old(); the previous value will be inserted automatically.

Use the following variant:

{!! form()->input('email', '[email protected]') !!}

instead of:



{!! form()->input('email', old('email', '[email protected]')) !!}

Philosophy

  • Fluent API

  • Explicit over magic

  • Laravel-native behavior

  • Clean and predictable HTML output

License

MIT License

Comments