Skip to content

Formuláře

AntikCz edited this page Feb 8, 2016 · 2 revisions

Automatické vytvoření přes cms-bin

create form

Ruční vytvoření

<?php

namespace App\MyModule\Components\Forms;

use WebChemistry\Forms\BaseControl;
use Nette\Forms\IControl;
use Nette\Forms\Controls;

class Form extends BaseControl {

	public function createMyForm() {
		$form = $this->getForm();
		
		$form->addText('text', 'First input');
		
		$form->onSuccess[] = [$this, 'successMyForm'];
		
		return $form;
	}
	
	public function successMyForm(\WebChemistry\Forms\Form $form, $values) {
	
	}

}

Použití v presenteru

config.neon:

services:
	- App\MyModule\Components\Forms\Form

presenter:

<?php

namespace App\Presenters\FrontModule;

use App\MyModule\Components;

class MyPresenter extends FrontModule {
	
	/** @var App\MyModule\Components */
	private $myForm;
	
	public function __construct(Components\Forms\Form $myForm) {
		$this->myForm = $myForm;
	}
	
	/**
	 * @return Components\Forms\Form
	 */
	protected function createComponentMyForm() {
		$form = $this->myForm->createMyForm();
		
		$form->onSuccess[] = [$this, 'successMyForm'];
		
		return $form;
	}
	
	public function successMyForm() {
		$this->flashMessage('All is ok!');
	}
	
}

Více

Rychlé containery Dostupné controly

Clone this wiki locally