mrself / ya-form
在 Laravel 中轻松生成 HTML 表单
1.0.5
2015-12-06 06:18 UTC
Requires (Dev)
- orchestra/testbench: ~3.0
- phpunit/phpunit: 4.0.*
README
你需要这个包的原因是什么?
如何创建表单?比如说你有一个文章资源,并想要实现创建/编辑文章的功能。你首先该做什么?我可以假设你需要在 create
视图中创建完整的表单标记,同时还需要为 edit
视图创建相同的表单标记。即使只有5个字段,创建这些内容也需要花费很多时间。但是,我发现了一种更简单的方法来做这件事。你以数组格式定义你需要哪些字段,初始化包。当你需要显示你的字段时,你写下:$form->render();
。就这么简单。你就有你需要的所有字段。
它如何工作
这更有趣。所需数据的格式是字段数组,格式如下
[
'name' => 'article_title',
'type' => 'text',
'label' => 'Title of the article'
]
最终你将得到
<div class="form-group">
<label for="formName-article_title">
Title of the article
</label>
<input class="form-control" id="formName-article_title" type="text" name="article_title" value="">
</div>
关键是,你为每种类型的字段(textarea、select)有模板。该包遍历字段数组,为每个字段渲染视图。结果是具有字段行的 HTML。你可以更改行和字段的视图文件。
如何安装
通过 composer 安装
composer require mrself/ya-form
将 'Mrself\YaF\YaFormServiceProvider'
添加到 config/app.php
中的服务提供者。如果你想重写视图文件,运行 php artisan vendor:publish --provider="Mrself\YaF\YaFormServiceProvider"
。
如何使用
首先,创建实例
$form = \App::make('YaF');
然后初始化
$form->init($seedData, $fields, $args);
$seedData
是表单字段的值的数组。键是字段的名称,数组的值是字段的值。$fields
是主要字段数据的数组
[
'name' => 'article_title',
'type' => 'text',
'label' => 'Title of the article'
]
$args
是字段的参数数组。键是字段的名称,值是字段的参数。
在你的视图中,你可以简单地写下:{!! $form->render() !!}
,这将输出所有字段。请注意,这不会包括表单的打开和关闭标签。