非常に単純な注文クエリで問題が発生しています。モデルと HABTM 関係を持つPost
モデルTag
があり、特定のタグが割り当てられたすべての投稿のリストを、投稿が作成された日付順に並べ替えて返そうとしています。
$this->set('data', $this->Post->Tag->find('all', array(
'conditions' => array('Tag.id' => 1),
'contain' => array('Post' => array(
'order' => 'Post.created_date desc'
))
)));
これは投稿のリストを返しますが、日付順ではありません。
デバッグをオンにすると、次のクエリが使用されているように見えます。
SELECT `Post`.`id`, `Post`.`title`, `Post`.`created_date`, `PostsTag`.`post_id`, `PostsTag`.`tag_id`
FROM `database`.`posts` AS `Post`
JOIN `database`.`posts_tags` AS `PostsTag` ON (`PotsTag`.`tag_id` = 1 AND `PostsTag`.`post_id` = `Post`.`id`)
投稿モデルのコード:
class Post extends AppModel {
public $name = 'Post';
public $hasAndBelongsToMany = array('Tag');
}
タグ モデルのコード:
class Tag extends AppModel {
public $name = 'Tag';
public $hasAndBelongsToMany = array('Post');
}
この問題に関するヘルプをいただければ幸いです - 私は CakePHP 2.1 を使用しています。違いがあれば。