Získání jedné hodnoty z db v presenteru

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

Jak prosím v NotORM v presenteru vytáhnu z určité tabulky pouze jednu hodnotu určitého sloupce? Nevím co vše jsem zkusil a zatím nic.

vvoody
Člen | 910
+
0
-

S takouto vseobecnou otazkou sa asi odpovedi nedockas. Bud odpoved najdes v dokumentacii alebo nam ukazes kus nejakeho tvojho kodu, ktory ti pomozeme opravit/vylepsit.

.:M@rt!n:.
Člen | 201
+
0
-

kod:

$CM = $this->context->createPolozka()->where('id', $form->values->polozka)->select('mnozstvi');
David Ďurika
Člen | 328
+
0
-

selection ti stale vrati activeRow nikdy nie konkretnu hodnotu… ale mozes urobit toto

<?php
$CM = $this->context->createPolozka()->where('id', $form->values->polozka)->select('mnozstvi')->limit(1)->fetch();
echo $CM->mnozstvi;
?>
vvoody
Člen | 910
+
0
-

select vrati Selection, az fetch vracia ActiveRow

edit: .:M@rt!n:. nastuduj si novy quickstart (konkretne model a databaze). Tvoja „Polozka“ zrejme dedi od Database/Table/Selection co neni moc doporucovany sposob.

Editoval vvoody (17. 9. 2012 13:58)

castamir
Člen | 629
+
0
-

vvoody: proč by nemohl používat Nette\Database\Table\Selection?

vvoody
Člen | 910
+
0
-

Ja mu to nezakazujem.

.:M@rt!n:.
Člen | 201
+
0
-

Už jsem na něho koukal, ale aplikaci mám už rozběhlou a quickstart si projdu znovu od začátku

David Ďurika
Člen | 328
+
0
-

vvoody napsal(a):

Ja mu to nezakazujem.

ale hrach ano https://forum.nette.org/…ov-do-modelu#… :)

.:M@rt!n:.
Člen | 201
+
0
-

Ahoj,
pořád se plácám s uložením jedné konkrétní hodnoty do proměnné v presenteru.
Představa je takováto:

<?php
  $PMa = $this->context->createPridavek()->where('intervalAd', '0-599' )->where('intervalId', '0-399' )->where('intervalH', '0-49' )->??;
?>

Kde do $PMa se mě uloží hodnota ze sloupce A.

Zkouším kde co, ale hodnota nikde.

MW
Člen | 615
+
0
-

Hodnota by mela byt v
$PMa->A

co mas v createPridavek() ?

Editoval MW (18. 10. 2012 8:40)

.:M@rt!n:.
Člen | 201
+
0
-

Takhle to funguje, ale jestli je správné řešení, to nevim :):

<?php
 $PMa = $this->context->createPridavek()->where('intervalH', '320-359')->select('A')->limit('1')->fetch();
$PMaa = $PMa->A;

?>