laracore/formbuilder

Laravel 5.x 基于Bootstrap 3的Blade引擎FormBuilder

0.1.4 2016-05-24 15:26 UTC

This package is not auto-updated.

Last update: 2024-09-26 00:09:32 UTC


README

Laravel 5.1 基于Bootstrap 3和用于Laracore CMS的Blade引擎FormBuilder。

此FormBuilder允许使用对象创建HTML表单,并使用Laravel Collective FormBuilderBootstrap CSS框架进行渲染。

##功能

  • 基于Bootstrap框架的对象到HTML映射

  • 可修改的每个表单组件视图

  • 支持Laravel表单模型绑定

  • 可扩展的API,便于添加新组件

安装

$> composer require "laracore/formbuilder:dev-master"

$> composer update

接下来,将新的提供者添加到config/app.php中的providers数组

Laracore\FormBuilder\FormBuilderServiceProvider::class,

最后,将两个类别名添加到config/app.php中的aliases数组

'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,

我们使用Laravel Collective的Facades。

用法

所有Bootstrap对表单和输入元素的推荐都在提供的类中预定义,可以直接使用或覆盖它们并自行提供。

创建新表单

$form = new FormBuilder();

添加组件

$form->addComponent(new TextField('name', 'Name'));

渲染表单

$form->render();

一次性添加多个组件

$components = [
	new TextField('name', 'Name'),
	new PasswordField('password', 'Password'),
	new PasswordField('confirm_password' 'Confirm your password'),
	new SubmitButton('Register user')
];

$form->addComponent($components);

使用命名构造函数创建表单

$model = new App\User();
$form = FormBuilder::create('POST', ['class' => 'form-horizontal', 'role' => 'form'], $model);

$components = [
	new TextField('name', 'Name'),
	new PasswordField('password', 'Password'),
	new PasswordField('confirm_password' 'Confirm your password'),
	new SubmitButton('Register user')
];

$form->addComponent($components);

使用命名构造函数创建表单并添加组件

$model = new App\User();

$components = [
	new TextField('name', 'Name'),
	new PasswordField('password', 'Password'),
	new PasswordField('confirm_password' 'Confirm your password'),
	new SubmitButton('Register user')
];

$form = FormBuilder::create('POST', ['class' => 'form-horizontal', 'role' => 'form'], $model, $components);