MultipleForm.php 756 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace Dcat\Admin\Form;
  3. use Dcat\Admin\Form;
  4. use Dcat\Admin\Widgets\Form as WidgetForm;
  5. class MultipleForm extends WidgetForm
  6. {
  7. /**
  8. * @var Form
  9. */
  10. protected $form;
  11. /**
  12. * @var Builder
  13. */
  14. protected $builder;
  15. public function __construct(Form $form)
  16. {
  17. $this->form = $form;
  18. $this->builder = $form->builder();
  19. $this->initFields();
  20. $this->initFormAttributes();
  21. }
  22. /**
  23. * Add a form field to form.
  24. *
  25. * @param Field $field
  26. *
  27. * @return $this
  28. */
  29. public function pushField(Field &$field)
  30. {
  31. $this->fields->push($field);
  32. $field->setForm($this->form);
  33. $field::collectAssets();
  34. return $this;
  35. }
  36. }