CakePHP - разбить на страницы и сортировать ассоциацию 2-го уровня
Я понимаю, что об этом спрашивали 100 000 раз, но я почти все 100 000 ответов прочитал, и ни один из них, похоже, не соответствует тому, что я ищу. Я испробовал все возможные комбинации (очевидно, нет), и я боюсь, что я получаю удар в чем-то настолько простом. Это мой второй проект Cake, поэтому я ни в коем случае не эксперт.
Профиль ->Принадлежит -> Магазин, Магазин ->Принадлежит -> Регион, Регион ->Имеет много -> Магазины
Профиль.php
class Profile extends AppModel {
public $belongsTo = array(
'Store' => array(
'className' => 'Store',
'foreignKey' => 'store_id'....
хранить.php
class Store extends AppModel {
public $belongsTo = array(
'Region' => array(
'className' => 'Region',
'foreignKey' => 'region_id'....
Область.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'));
Посмотреть.php
<th><?php echo $this->Paginator->sort('Region.name', 'Region'); ?></th>
Все, что я хочу сделать, это иметь возможность сортировать по имени региона при использовании paginator. Независимо от того, какую комбинацию я использую, я просто не могу отсортировать Region.name.order By
Предложение опущено со всеми остальными 2-уровневыми ассоциациями, но отлично работает в любое другое время (с тем же уровнем или 1-м уровнем).
Кто-нибудь может предложить исправить эту простую ошибку?