larvata-tw/former

自定义表单构建器

5.0.1 2021-08-11 05:36 UTC

README

以Laravel方式创建和格式化表单

Build Status Latest Stable Version Total Downloads

Former输出与您喜欢的CSS框架兼容的HTML表单元素(目前支持Bootstrap和Foundation)。Former还处理验证错误后的重新填充,包括自动渲染受影响字段的错误文本。

简介

Former提供了一种流畅的表单创建方法,允许您做

Former::framework('TwitterBootstrap3');

Former::horizontal_open()
  ->id('MyForm')
  ->rules(['name' => 'required'])
  ->method('GET');

  Former::xlarge_text('name') # Bootstrap sizing
    ->class('myclass') # arbitrary attribute support
    ->label('Full name')
    ->value('Joseph')
    ->required() # HTML5 validation
    ->help('Please enter your full name');

  Former::textarea('comments')
    ->rows(10)
    ->columns(20)
    ->autofocus();

  Former::actions()
    ->large_primary_submit('Submit') # Combine Bootstrap directives like "lg and btn-primary"
    ->large_inverse_reset('Reset');

Former::close();

每次调用不存在的方法时,Former都假设您正在尝试设置属性,并神奇地创建它。这就是为什么您可以在上面的例子中看到 ->rows(10);如果您想设置包含短划线的属性,只需将其替换为下划线:->data_foo('bar') 等于 data-foo="bar"。当然,如果您想设置实际包含下划线的属性,您始终可以使用回退方法 setAttribute('data_foo', 'bar')。欢迎您。

这是它的核心,但Former提供了更多功能。我邀请您查阅wiki,以了解Former能做什么。

安装

使用Composer要求Former包

composer require anahkiasen/former

使用Artisan发布配置文件

php artisan vendor:publish --provider="Former\FormerServiceProvider"

App.php配置(适用于Laravel 5.4及以下版本)

对于Laravel 5.4及以下版本,您必须修改您的config/app.php

providers数组中添加

Former\FormerServiceProvider::class

然后通过在同一个文件中将Former的主要类添加到aliases数组来为Former添加别名

'Former' => 'Former\Facades\Former',

目录