This seems to be working.

        $this->Tag->unbindModel(array('hasAndBelongsToMany' => array
('Improvements')));
        $this->Tag->bindModel(array('hasOne' => array(
                'ImprovementsTag',
                'FilterTag' => array(
                        'className' => 'Tag',
                        'foreignKey' => false,
                        'conditions' => array('FilterTag.id =
ImprovementsTag.tag_id')
                )
        )));
                $tags = $this->Tag->find('all', array(
                                'conditions'=>null,
                                'fields' => array('Tag.*', 'COUNT(FilterTag.id) 
AS no_tags'),
                                'group' => 'Tag.id'
                ));

Array
(
    [0] => Array
        (
            [Tag] => Array
                (
                    [id] => 1
                    [title] => Effective Glucose Control
                )

            [0] => Array
                (
                    [no_tags] => 2
                )

        )

Is there a way of tidying this array so no_tags is part of the Tag
element?

Cheers

R

On Apr 9, 1:45 pm, "[email protected]"
<[email protected]> wrote:
> Hi i have the following associations:
>
> var $hasAndBelongsToMany = array('Improvements');
> var $hasAndBelongsToMany = array('Tags');
>
> With a join table improvements_tags
>
> I want to be able to count the number of time a tag has been used.
> The following sql query works, but i'm not sure how to do this in
> CakePHP?
>
> SELECT tags.id, tags.title, COUNT(improvements_tags.tag_id) AS no_tags
> FROM tags, improvements_tags WHERE tags.id = improvements_tags.tag_id
> GROUP BY tags.id
>
> I've tried to bindModel with a count in the find condition, but it
> never seems to work.  Any help would be really appreciated.
>
> Ross
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to