Я бы использовал 2 х принадлежащих с разными именами.
$belongsTo = array(
'BookStatus' => array(
'className' => 'Status',
'foreignKey' => 'book_status_id'
),
'BookCondition' => array(
'className' => 'Status',
'foreignKey' => 'book_condition_id'
)
)
Не знаю, как это вписалось бы в вашу стойку дерева
если это не работает, тогда попробуйте $ paginator-> sort ('Condition', 'BooksStatus.status_id');
вам нужно убедиться, что запрос, использованный для получения вышеуказанного, выполняет соединение (unBind / bind на лету)