私は多くのテーマを持つテンプレートを持っています。 クリア十分な私の関係は私がテーマの数とテンプレートを表示したいと私はこのコードを適用しています テンプレートhasManyのテーマになること:モデルを正しく関連付ける方法cakephp
$this->Template->recursive = 2;
$this->Template->bindModel(
array(
'hasMany' =>array(
'TemplateTheme'=>array(
'className'=>'TemplateTheme',
'fields' => 'count(TemplateTheme.id) AS themes'
)
)
),false
);
$this->paginate = array(
'order' => array('Template.modified DESC'),
'limit' =>$limit
);
$template = $this->paginate('Template');
pr($template);die();
しかし、私は取得していますが
Array
(
[0] => Array
(
[Template] => Array
(
[id] => 1
[name] => churchDesign
[status] => Active
[created] => 2011-10-24 10:37:23
[modified] => 2011-10-25 15:16:46
)
[TemplateTheme] => Array
(
[0] => Array
(
[template_id] => 1
[TemplateTheme] => Array
(
[0] => Array
(
[themes] => 3
)
)
)
)
)
[1] => Array
(
[Template] => Array
(
[id] => 2
[name] => blossoms
[status] => Active
[created] => 2011-10-19 00:00:00
[modified] => 2011-10-24 14:05:27
)
[TemplateTheme] => Array
(
)
)
)
ですここでの問題は、最初の配列(1番目のテンプレート)のすべてのテーマを数えています。[TemplateTheme] =>配列 ( [0] =>配列 ( [テーマ] => 3 ) 第三のテーマは、実際に2 template.The関係に属し
TEMPLATE_IDは、テンプレートの各テーマを表すために、テーマ・テーブルになっています。
テンプレート1には2つのテーマがあり、テンプレート2には1つのテーマがあり、現在は3つのテーマすべてを1つ目のテンプレートに表示しています。
私はそれがこのよう
templatename1
count of themes 1st template
template name 2
count of themes of 2nd template
のように私にこれを行うための正しい方法を教えてくださいしたいです。
問題はカウントされていません。問題は各テンプレートのテーマを取得しています。テンプレートは2つのテーマを持ち、テンプレートは2つのテーマを持っています。最初のテンプレートの3つのテーマをすべて表示しています。注目してください。 –
'(この 'の$ this - >テンプレート - > bindModel( 配列( 'hasManyの'=>配列( 'TemplateTheme'=>配列( が 'className'=> 'TemplateTheme'、 'フィールド'=>配列を試してみてください) ) )、偽 ); ' – mentes
問題は正確なデータを取得している問題を数えていません –