CakePHP - paginieren und sortieren 2nd Level Association
Ich verstehe, dass dies 100.000 Mal gefragt wurde, aber ich habe so ziemlich alle 100.000 Antworten gelesen und keine davon scheint zu dem zu passen, wonach ich suche. Ich habe jede mögliche Kombination ausprobiert (offensichtlich nicht) und ich fürchte, ich werde an etwas verhältnismäßig Einfachem geschlagen. Dies ist mein zweites Kuchenprojekt, daher bin ich kein Experte.
Profil ->Gehört -> Laden, Laden ->Gehört -> Region, Region ->Hat viele -> Geschäfte
Profil.php
class Profile extends AppModel {
public $belongsTo = array(
'Store' => array(
'className' => 'Store',
'foreignKey' => 'store_id'....
Geschäft.php
class Store extends AppModel {
public $belongsTo = array(
'Region' => array(
'className' => 'Region',
'foreignKey' => 'region_id'....
Region.php
class Region extends AppModel {
public $hasMany = array(
'Store' => array(
'className' => 'Store',
'foreignKey' => 'region_id'....
ProfileController.php
$this->Paginator->settings = array(
'conditions' => array('Profile.job_title_id' => '1'),
'contain' => array(
'Store'=> array(
'Region'
)
)
);
$UserArds = $this->Paginator->paginate('Profile');
$this->set(compact('UserArds'));
Aussicht.php
<th><?php echo $this->Paginator->sort('Region.name', 'Region'); ?></th>
Alles, was ich tun möchte, ist, in der Lage zu sein, nach dem Namen der Region zu sortieren, wenn Paginator verwendet wird. Egal welche Kombination ich benutze, ich kann scheinbar nicht in der Lage sein, Region.name zu sortieren. Dasorder By
Bei allen anderen Assoziationen mit einer Tiefe von 2 Ebenen wird die Klausel weggelassen, funktioniert jedoch zu jedem anderen Zeitpunkt (mit derselben Ebene oder der ersten Ebene) einwandfrei.
Kann jemand eine Lösung für diesen einfachen Fehler vorschlagen?