zofe / dataform
表单助手/构建器,具有优雅的支持,适用于Deficient
1.0.7
2014-11-13 09:56 UTC
Requires
- php: >=5.3.2
- illuminate/support: ~4.1
- zofe/deficient: 1.0.*
README
DataForm是一个表单构建器。默认情况下,它生成与Bootstrap 3兼容的输出。
目前它建立在Deficient(laravel组件的子集,包括eloquent和blade,以及burp路由器)之上。计划是使其也兼容laravel,作为标准包。
它可以
- 创建表单
- 将表单与eloquent模型绑定
用法
作为表单助手
$form = DataForm::create(); $form->text('title','Title'); //field name, label $form->text('body','Body')->rule('required'); //validator $form->submit('Save'); $form->saved(function() use ($form) { //do something with post values, then.. $form->message("ok record saved"); $form->linkRoute("home","Back to the Form"); }); ...
具有模型绑定的表单(预设值和保存时存储新值)
$form = DataForm::source(User::find(1)); $form->text('title','Title'); //field name, label $form->textarea('body','Body')->rule('required'); //validation $form->checkbox('public','Public'); $form->select('role', 'Role')->options(Role::lists("name", "id")); $form->submit('Save'); $form->saved(function() use ($form) { $form->message("ok record saved"); $form->linkRoute("home","Back to the Form"); }); ...
对于"rules"字段,你可以引用laravel验证
请注意,@此时
- 只有文本、textarea、select和checkbox字段
- 模型绑定还不支持关系
为什么不从laravel开始呢?
我们选择"deficient"(laravel组件的子集),以使其更加独立,并赋予其作为独立使用或在任何其他项目中嵌入的能力。
安装
通过composer安装
{
"require": {
"zofe/dataform": "dev-master"
}
}
设置
要配置数据库、视图,您必须参考Deficient
这是一份简短的操作指南
- 创建最小文件夹/配置文件
- 部署dataform视图
- 部署一个前端控制器和示例(可选,但建议)
$ php vendor/zofe/deficient/deficient setup:folders
$ php vendor/zofe/dataform/dataform setup:views
$ php vendor/zofe/dataform/dataform setup:router