该包已被废弃,不再维护。未建议替代包。
最新版本(2.0.0)的此包没有可用的许可信息。

Nette 表单扩展

2.0.0 2016-09-07 19:22 UTC

This package is not auto-updated.

Last update: 2017-07-18 08:24:09 UTC


README

Build Status

安装

Neon

extensions:
    form: WebChemistry\Forms\DI\FormsExtension
    
form:
    factories:
    	front: WebChemistry\Forms\Factory\DefaultFormFactory

更快容器


class ExampleForm extends WebChemistry\Forms\Control {

    public function createMyForm() {
        $form = $this->createForm();
        
        $form->addText('text', 'Text');
        
        $form->addText('container.text', 'Text');
        $form->addText('container.textTwo', 'Text two');
        
        $form->addContainer('container')->addText('container.text', 'Text');
        $form->addText('container.container.textTwo', 'Text two');
        
        unset($form['container.text']);
        isset($form['container.text']); /
        
        return $form;
    }
}

使用WebChemistry\Forms\Control的可重用表单

控件


class ExampleForm extends WebChemistry\Forms\Control {

    public function createMyForm() {
        $form = $this->createForm(); // Returns form by module from Application or default, if module not set

        $form->addText('text', 'Text');

        return $form;
    }

}

演示者

class FooPresenter extends Nette\Application\UI\Presenter {

    /** @var ExampleForm */
    private $exampleForm;

    public function __construct(ExampleForm $exampleForm) {
        $this->exampleForm = $exampleForm;
    }

    public function createComponentForm() {
        return $this->exampleForm->createMyForm();
    }

}

自定义工厂

配置

form:
	factories:
		front: FrontFactory # for FrontModule
		admin: AdminFactory # for AdminModule