Odkaz na konkrétnu metódu

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

Čaute,
snažím sa vytvoriť štandardný odkaz na metódu ktorá, zmaže 1 riadok z tabulky s $id

model: MemberManager.php

	function deleteById($id)
	{
		return $this->db->query('DELETE FROM users WHERE userID=?', $id);
	}

presenter: MemberPresenter.php

	public function renderDelete($id)
	{
		$deleteUser = $this->facade->deleteById($id);
		if (!$deleteUser)
		{
			$this->error();
		}
		$this->template->deleteUser = $deleteUser;
	}

template: default.php

<a n:href="Member:renderDelete, $user->userID" class="btn btn-danger">

Samotná ladenka mi nehodí źiadnu chybu, ak si ale checknem HTML tak tam mám niečo také:

<a class="btn btn-danger" href="#error: Unable to pass parameters to action 'Member:renderDelete', missing corresponding method.">

Vedel by mi niekto poradiť?

EDIT:
Takto vyzerá FIX:
Model:

	function deleteById($id)
	{
		return $this->db->query('DELETE FROM users WHERE userID=?', $id);
	}

Presenter:

	public function handleDelete($id)
	{
		$this->facade->deleteById($id);
	}

View:

<a n:href="delete! $user->userID" class="btn btn-danger">

Vďaka za pomoc :)

Editoval Andurit (19. 3. 2015 13:58)

Felix
Nette Core | 1247
+
+3
-

Mas spatne odkaz.

Spravne je.

<a n:href="Member:delete">...

Na to co potrebujes ty se lepe hodi signaly.

<a n:href="Member:delete!">...

Editoval Felix (19. 3. 2015 13:37)

Andurit
Člen | 131
+
0
-

Ďakujem, mám tam ešte problém že to po mne chce delete.latte, musim nejakým spôsobom vyriešiť redirect na member:default.latte

Každopádne môžeš mi prosím vysvetliť prečo je to správne member:delete? akosi mi to nedochadza

Felix
Nette Core | 1247
+
0
-

Mrkni do dokumentace. MVC. Nette prevadi delete → actionDelete a renderDelete.

Jak rikam, spravne je pouziti handleDelete a odkaz delete!, pak nebudes potrebovat sablonu.

Editoval Felix (19. 3. 2015 13:44)

Andurit
Člen | 131
+
0
-

Fixed, editol som svoju otázku aj s odpoveďou, vďaka ;)