Ich vermute ich muss mit dem Ausdruck ->with() bei findall() arbeiten, bin mir aber nicht sicher. Ich habe schon versucht im Shop-Model einen Scope zu definieren, der nur die aktivierten Elemente selektiert. Den Scope konnte ich aber in der Criteria wieder nicht verarbeiten.
Ich habe zwei "Active" Felder die beachtet werden müssen, einmal priesvergleich.active = 1 und shops.active = 1. Wobei ich vom Preisvergleich-Model auf das Shops-Model mit der Spalte "Preisvergleich.Shop" (oder om model durch shop0) komme.
Anbei noch die Struktur der Tabellen:
Ich denke es muss irgendwie in diese Richtung gehen (siehe Änderungen an der Zeile mit "with()"):