chomenko / extra-form
Installs: 708
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 1
Type:extensions
Requires
- php: >=5.6
- kdyby/doctrine: ^3.3
- nette/di: ^2.4
- nette/forms: ^2.4
- nettpack/stage: ^1.0
- symfony/validator: ^4.2
README
What do you do?
- Ability to work with the entity
- Rendering bootstrap style
- Grid allows you to create custom layouts without using templates
- Input group
- Allows you to use it symfony/validator in entities
- Can be used on relation entity pairs list
Required:
- nette/di
- nette/forms
- symfony/validator
- kdyby/doctrine
- nettpack/stage
Install
$ composer require chomenko/extra-form
Configure
extensions: ExtraForm: Chomenko\ExtraForm\DI\ExtraFormExtension
Events
Look on this example Simple event. Service tag extraForm.events
.
If you do not use auto-install.
services: SimpleEvent: class: Examples\SimpleEvent\Event tags: ["extraForm.events"]
Form events
- CRETE_FORM
- INSTALL_ENTITY
- BEFORE_ADD_COMPONENT
- ADD_COMPONENT
- BEFORE_RENDER
- AFTER_RENDER
Elements events
- ATTACHED
- INSTALLED
- SET_OPTION
- ADD_CONSTRAINT
- LOAD_HTTP_DATA
- AFTER_LOAD_HTTP_DATA
- SET_ITEMS
- SET_VALUE
- RENDER
There are not all things I want now.
Examples
To create the first form, look at the class Chomenko\ExtraForm\FormFactory
Entity forms
- Simple form
- With use symfony assert
- Pairs list
- Join pairs list
- Relation pairs OneToMany ->relation record<- ManyToOne
Events
Rendering
Builder preserve the order of the elements, so if you need to edit only two elements, you do not have to edit the whole form
<?php //...... /** * @return ExtraForm */ public function create(): ExtraForm { $form = $this->createForm(); $form->addText('name', 'Name') ->setRequired(); $form->addText('surname', 'Surname') ->setRequired(); $form->addPassword('password', 'Password') ->setRequired(); $form->addSubmit('send', 'Sign in'); $builder = $form->builder(); $row = $builder->addRow(); $row->addColMd(6, "name"); $row->addColMd(6, ["surname"]); return $form; } //......