データベースからデータを取得し、グラフで読み取れるように表示する方法を見つけようとしています。
コントローラー: $this->Record->virtualFields['sum'] ='COUNT(*)';
$records=$this->Record->find('list',
array('fields' => array('drug_id', 'sum'), // from the table 'drugs' with 2 fields which drug_id and drug
'group' => 'drug_id'));
debug($records);
$chartData[] = implode(', ',$records);
debug($chartData);
ページでの「デバッグ」の表示方法:
/app/Controller/RecordsController.php (line 72)
array(
'Trees' => '2',
'Socks' => '1',
'Things' => '9',
'Mice' => '1',
'Clothes' => '6',
'Shoes' => '4',
'Underwear' => '3',
'Tables' => '6',
'Mouse' => '1'
)
/app/Controller/RecordsController.php (line 74)
array(
(int) 0 => '2, 1, 9, 1, 6, 4, 3, 6, 1'
)
ご覧のとおり、インロードは、何らかの理由で、substance フィールドを削除します。次のように表示する必要があります。
'Underwear', '1'
etc
編集:
hasMany を使用して、化合物にデータベースの ID を割り当てるにはどうすればよいでしょうか。同じ化合物に多くの異なるユーザーがいるからです。そして、多くの異なる化合物に同じユーザーがいます。
ドキュメントを読んでいますが、何か不足しているかどうかはわかりませんが、ドキュメントがランダムに切り取られているようです...それが何をし、どのように開始するかを示しているようです.
今すぐクエリを実行すると(この例では上記のクエリを編集しました)、次の値を取得します
'5' => '2'
しかし、データベースにあるものを関連付けるために hasMany を使用する必要があると思います。
ID | Compound
5 | Tables
5の代わりに「テーブル」を表示できるように