model vrstva, objekty po vybrati z db

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

ahoj,
som zaciatocnik s nette a podla tutorialu som si spravil podobnu aplikaciu.
na zaciatku tutorialu sa tvori model vrstva tym, ze si vytvorime jednoduche objekty dediace zo „Selection“, ktore maju len konstruktor a ziadne dalsie metody.
definovali sa k nim tovarne a nasledne sa v presenteroch pouzivaju, napr. „$this->context->createTask()->…“.
ked spravim vo view iteraciu cez selectnute data, typ jednotlivych rows je ActiveRow.

Je nejak mozne pracovat so selecnutymi datami ako s vlastnymi objektami? Mam na mysli to, ze by sa vytvorila podobna trieda ako v tutoriale „Task“ (asi by teda dedila z ActiveRow) ale navyse by obsahovala moje vlastne metody a potom pri iteracii by sa dali tieto metody volat? Samozrejme takuto triedu si vytvorit mozem a dat jej ako atribut ActiveRow, ale viac by sa mi pacilo keby to robilo automaticky a rovno „fetch()“ alebo „get()“ by vracali tieto ActiveRow s mojimi metodami.

dik

hrach
Člen | 1838
+
0
-
  1. nikdy neded Selection. Bad practise.
  2. vlastni obejkty zatim nelze vytvaret. Muzes mrknout na https://github.com/hrach/ndab kterej to nejak obcahzi, ale neni to ted aktualni k zadne vetvi nette.
vc
Člen | 6
+
0
-

ked to je Bad practise, preco to je v tutoriale? aky je spravny postup?

hrach
Člen | 1838
+
0
-

Prosim te, kde je ten tutorial, uz sem se po nem dival, ale nikde sem to nenasel.

vc
Člen | 6
+
0
-

je to tu https://doc.nette.org/cs/quickstart

ako by to malo byt spravne?

hrach
Člen | 1838
+
0
-

Neon:

factories:
    tasks: @database::table('task')
    users: @database::table('user')
    tasklists: @database::table('tasklist')

(ted presne nevim, jeslti to funguje s factories, ale princip je snad jasny :))

vc
Člen | 6
+
0
-

ano je to jasne, dik,
a kde by sa teda mala riesit logika, funcnost a praca s db? mam si vytvorit objekty napr. Task kde nasledne presypem data z ActiveRow a tam s nimi pracovat, alebo?

hrach
Člen | 1838
+
0
-

tot vecna otazka, par temat se tomuto tady venuje, ja souhlasim vicemene s tvym nazorem, ale tato moznost tu zatim uplne neni no…