数据表单

快速入门

ModStart\Form\Form 类用于快速生成表单页面,参照例子 数据表格→快速入门

可以通过如下代码快速定义个数据表单

  1. return Form::make('blog', function (Form $form) {
  2. // 定义标题字段,格式为单行文本
  3. $form->text('title', '标题');
  4. // 定义封面字段,格式为单张图片
  5. $form->image('cover', '封面');
  6. // 定义摘要字段,格式为多行文本
  7. $form->textarea('summary', '摘要');
  8. // 定义内容字段,格式为富文本
  9. $form->richHtml('content', '内容');
  10. });

获取当前模型数据

在闭包内可以获取到当前模型的数据

  1. return Form::make('blog', function (Detail $detail) {
  2. dd($detail->item());
  3. });

字段自定义渲染

  1. $form->text('content', '字段名称')->hookRendering(function (AbstractField $field, $item, $index) {
  2. // 是否为普通表单模式、增加表单模式、修改表单模式,可根据不同模式反馈不同的渲染内容
  3. // $field->context()->isModeForm()
  4. // $field->context()->isModeAdd()
  5. // $field->context()->isModeEdit()
  6. return <<<HTML
  7. <div class="line">
  8. <div class="label">内容</div>
  9. <div class="field">
  10. <div style="border:2px solid red;padding:10px;">
  11. 字段自定义显示,其中name需要和字段column相同
  12. <input type="text" name="content" value="内容" />
  13. </div>
  14. </div>
  15. </div>
  16. HTML;
  17. });

字段支持

显示 display

  1. $form->display('field','名称');

单行文本 text

  1. $form->text('field', '名称');

多选 checkbox

  1. $form->checkbox('field', '名称');

标签 tags

  1. $form->tags('field', '名称');

代码 code

  1. $form->code('field', '名称');

树状组件 tree

  1. $form->tree('field', '名称');

类型 type

  1. $form->type('field', '类型');

密码 password

  1. $form->password('field', '类型');

单张图片 image

  1. $form->image('field', '类型');

多张图片 images

  1. $form->type('field', '类型');

多张图片(临时路径) imagesTemp

  1. $form->type('field', '类型');
  1. $form->link('field', '类型');

开关 switch

  1. $form->switch('field', '类型');

多行文本 textarea

  1. $form->textarea('field', '类型');

颜色 color

  1. $form->color('field', '类型');

日期 date

  1. $form->date('field', '类型');

日期时间 datetime

  1. $form->datetime('field', '类型');

时间 time

  1. $form->time('field', '类型');

单选 radio

  1. $form->radio('field', '类型');

下拉 select

  1. $form->select('field', '类型');

富文本 richHtml

  1. // 默认富文本
  2. $form->richHtml('field', '类型');
  3. // 简单版富文本
  4. $form->richHtml('field', '类型')->editorMode('simple');

Markdown markdown

  1. $form->markdown('field', '类型');

键值对列表 keyValueList

  1. $form->keyValueList('field', '类型');

多值 values

  1. $form->values('field', '类型');

HTML html

  1. $form->html('field', '类型');

数字 number

  1. $form->number('field', '类型');

百分比 percent

  1. $form->percent('field', '类型');

小数 decimal

  1. $form->decimal('field', '类型');

货币 currency

  1. $form->currency('field', '类型');

ID id

  1. $form->id('field', '类型');

验证码 captcha

  1. $form->captcha('field', '类型');

临时文件 fileTemp

  1. $form->fileTemp('field', '类型');

文件 file

  1. $form->file('field', '类型');

视频 video

  1. $form->video('field', '类型');

音频 audio

  1. $form->audio('field', '类型');

中国地区 areaChina

  1. $form->areaChina('field', '类型');

隐藏域 hidden

  1. $form->hidden('field', '类型');

图标 icon

  1. $form->icon('field', '类型');

更多内置组件请参照 ModStart\Support\Manager\FieldManager 中的定义