Trait method injectLoginFormFactory has not been applied, because there are collisions with other trait method

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
SontoEremo
Člen | 341
+
0
-

Zdravím,
Snažím sa rozbehnuť Login Form a Register Form továrničku podľa tohto „guestbook
“:https://github.com/…e/master/app ale akonáhle pridám do sign presenteru Register tak mi vyhodí chybu

Trait method injectLoginFormFactory has not been applied, because there are collisions with other trait methods on App\Presenters\SignPresenter

Môj SignPresenter

<?php
namespace App\Presenters;
use App\Components\TCreateComponentLoginForm;
use App\Components\TCreateComponentRegisterForm;

class SignPresenter extends DefaultPresenter {

	use TCreateComponentLoginForm;
	public function renderLogin(){
	}

	use TCreateComponentRegisterForm;
	public function renderRegister(){
	}
}

ďakujem vopred za pomoc prípadne opravu chyby.

David Matějka
Moderator | 6445
+
0
-

co obsahuje traita TCreateComponentRegisterForm ?

SontoEremo
Člen | 341
+
0
-
<?php
namespace App\Components;

trait TCreateComponentRegisterForm {
	/**
	* @var IRegisterFormFactory
	*/
	protected $registerFormFactory;
	/**
	* Injector.
	*/
	public function injectLoginFormFactory(IRegisterFormFactory $registerFormFactory) {
		$this->registerFormFactory = $registerFormFactory;
	}
	/**
	* @return RegisterForm
	*/
	protected function createComponentRegisterForm() {
		return $this->registerFormFactory->create();
	}
}
SontoEremo
Člen | 341
+
0
-

Do prčíc už som si to teraz všimol
injectLoginFormFactory
namiesto
injectRegisterFormFactory