DataProvider, Widget, Suche

Hallo,

kann mir jemand verraten welche DataProvider mit welchen Widgets ich verwenden kann damit ich die integrierte Suche benutzen kann?

Ich will Daten aus mehreren Datenbank-Tabellen darstellen und durchsuchen lassen.

Will man die dargestellen Daten durchsuchen lassen, muss man ja dem Widget als Filter eine Model-Instanz (‘filter’=>$model,) übergeben. Meine Model-Klasse besteht aber aus mehreren Datenbank-Tabellen (Klassenvariablen entsprechen Spalten aus vielen Tabellen). Ich kann ja meine Model-Klasse mit CActiveRecord erweitern, public Variablen definieren und denen die Werte aus einem DAO-Array übergeben. (Benutze DAO wegen der Datenbankstruktur und der resultierenden SQL-Statements). Das ist kein problem.

ABER wie ist das mit dem DateProvider ??

In der xxxController.php (erzeugt vom gii) wird bei actionAdmin() und actionIndex()-Funktionen ein Objekt mit

$model=new meinModel(‘search’) und $dataProvider=new CActiveDataProvider(‘meinModel’) erzeugt.

Was sollen diese String-Übergaben an den Kostruktor? Was wird da gemacht? Könnte ich da auch zB anstelle des

CActiveDataProvider(‘meinModel’) ein CArrayDataProvider oder ein CSqlDataProvider (beide werden mit einem SQL-Statement erzeugt, was in meinem Fall mir passen würde) nehmen? oder muss ich für die Suche einen CActiveDataProvider verwenden (muss ich dann die relations in der Model-Klasse setzen?)?

Und was müsste ich für $model=new meinModel(‘search’) machen? Ruf es da die search()Funktion in der Model-Klasse auf? wenn ja, muss es wieder dieses CActiveDataProvider sein?