예제 #1
0
파일: FormTest.php 프로젝트: sahanh/formy
 public function testBasic()
 {
     $fs = new Fieldset();
     $fs->setName('customers');
     $fs->addElement(new Element('first_name', 'text'));
     $fs->addElement(new Element('last_name', 'text'));
     $fs->addElement(new Element('address', 'textarea'));
     $form = new Form();
     $form->addFieldset($fs);
     $form->setAttribute('action', 'create');
     $form->setAttribute('class', 'form-horizontal');
     $this->assertEquals(['customers' => $fs], $form->getFieldsets());
     $this->assertEquals($form->getAttribute('class'), 'form-horizontal');
     $this->assertEquals($form->getAttribute('action'), 'create');
 }
예제 #2
0
 public function makeFormConfig(FormConfig $config)
 {
     $validation_rules = $config->getValidationRules();
     $val = new LaravelValidator();
     $val->setRules($validation_rules);
     $form = new Form();
     $form->setAttribute('action', $config->getAction());
     $form->setTemplate($config->getTemplateInstance());
     $fields_data = $config->getFields();
     foreach ($fields_data as $fieldset_name => $fields) {
         $fs = new Fieldset();
         $fs->setName($fieldset_name);
         foreach ($fields as $field_name => $field_data) {
             $element = $this->makeElement($field_name, $field_data);
             $fs->addElement($element);
         }
         $form->addFieldset($fs);
     }
     $form->setValidator($val);
     return $form;
 }