Mam taki problem, chciałbym sobie filrować dane
Page 1 of 1
Filtrowanie danych
#1
Posted 05 February 2012 - 08:35 AM
Witam,
Mam taki problem, chciałbym sobie filrować dane
Proste, gdy sie używa AR
Co w przypadku kiedy nie korrzysta się z AR tzn. napisało się model którego to metody wyciągają dane z bazy poprzez proste zapytania i zwracają je do kontrolera jako np. queryRow. Istniej w ogóle możliwość w prosty i przejżysty sposób filtrowania takich danych ala metoda search wygenerowana przez CRUD'a? Czy niestety trzeba pisać formularze, oskryptować je js ... itd.
Mam taki problem, chciałbym sobie filrować dane
#2
Posted 05 February 2012 - 02:11 PM
Filtrowanie np. w CGridView czy w ogóle filtrowanie w SQL ?? Jeżeli chcesz żeby CGridView działał bez AR, to wystarczy żeby funkcja search zwróciła dataProvider inny niż CActiveDataProvider (np. CSqlDataProvider). Wtedy nie tworzysz obiektu klasy CDbCriteria, tylko podpinasz konkretne wartości w swoje zapytanie sql, z zapytania zwracasz obiekt CSqlDataProvider a CGridView robi resztę
. Ważne, żeby dane poddać walidacji, gdyż są przekazywane bezpośrednio od użytkownika i mogą tam pojawić się złe rzeczy
.
---------------------------------------------------------------------
"Never memorize what you can look up in books."
Albert Einstein
"Never memorize what you can look up in books."
Albert Einstein
#3
Posted 05 February 2012 - 02:48 PM
W sensie nie chodzi mi o filtrowanie jako walidację. Model(ale nie AR) zwraca mi dataProvider(np. CSqlDataProvider), wrzucam to teraz do CGridView i chciałbym aby w nagłówku tabeli był AJAXowy formularz do wyszukiwania/filtrowania danych? Jest taka mozliwość mając dane z modelu nie dziedziczącego z AR?
#4
Posted 05 February 2012 - 03:15 PM
Myślę, że tak. Model na pewno musi dziedziczyć po CModel, ale nie musi to być AR. Co się dzieje, jeżeli przekazujesz CSqlDataProvider do CGridView?
---------------------------------------------------------------------
"Never memorize what you can look up in books."
Albert Einstein
"Never memorize what you can look up in books."
Albert Einstein
Share this topic:
Page 1 of 1

Help












