Hello Im having problem with performing find function in following
scenario:

I have a voting sistem for motives in gallery. User can vote only once
for one motive. So in table Points there is an entry with
corresponding user_id and motive_id when user votes.

I have three models: USER, Motive, Points

User $hasMany motives
Motive $belongsTo user

Motive $belongsTo User
Motive $hasMany motivePoints

Points $belongsTo Motive
Points $belongsTo User

When user wants to vote i have to perform following SQL query to check
if he already voted :

Select * from motives _points WHERE user_id='$id' AND motive_id =
'$motive_id'

I want to perform find('count') with this conditions in
Motives_controller. If it returns >0 , user already voted for this
motive. I tried this:

$this->Motive-
>find('count'),array('conditions'=>array('Point.user_id'=>26))

It should return 1 because there is only one entry for user 2 in table
Points but it returns 3

If I look in debug($this->Motive-
>find('all'),array('conditions'=>array('Point.user_id'=>26))) i get:


***************************************************
***************************************************

Array
(
    [0] => Array
        (
            [Motive] => Array
                (
                    [id] => 1
                    [user_id] => 26
                    [title] => Nije Vuk Ovca
                    [folder] => motives/motiv_1
                    [points] => 45
                    [created] => 2008-09-01 11:44:45
                    [modified] => 2008-09-01 15:07:48
                )

            [User] => Array
                (
                    [id] => 26
                    [username] => luigi7up
                    [password] => 670a2a8ff7b5df64e8205775d4666b55
                    [email] => [EMAIL PROTECTED]
                    [first_name] => Luka
                    [last_name] => Eterovic
                    [group_id] => 2
                )

            [Point] => Array
                (
                )

        )

    [1] => Array
        (
            [Motive] => Array
                (
                    [id] => 2
                    [user_id] => 27
                    [title] => Killabear
                    [folder] => motives/motiv_2
                    [points] => 130
                    [created] => 2008-09-01 11:46:08
                    [modified] => 2008-09-03 17:16:31
                )

            [User] => Array
                (
                    [id] => 27
                    [username] => gazda
                    [password] => 7be96ec0264ec22ea292b1484ec88da3
                    [email] => [EMAIL PROTECTED]
                    [first_name] => Administratrija
                    [last_name] => Admic
                    [group_id] => 3
                )

            [Point] => Array
                (
                    [0] => Array
                        (
                            [id] => 1
                            [user_id] => 26
                            [motive_id] => 2
                            [points] => 5
                            [created] => 0000-00-00 00:00:00
                            [modified] => 0000-00-00 00:00:00
                        )

                )

        )

    [2] => Array
        (
            [Motive] => Array
                (
                    [id] => 3
                    [user_id] => 31
                    [title] => Funny Geraffe
                    [folder] => motives/motiv_3/
                    [points] => 38
                    [created] => 2008-09-01 15:20:23
                    [modified] => 2008-09-04 10:57:43
                )

            [User] => Array
                (
                    [id] => 31
                    [username] => marljivi
                    [password] => eb01e22ae152e997783f9617c4dd535f
                    [email] => [EMAIL PROTECTED]
                    [first_name] => Marljivi
                    [last_name] => Marljivi
                    [group_id] => 3
                )

            [Point] => Array
                (
                )

        )

)


***************************************************
***************************************************

I was playing with recursive = 2 and behaviour Containable to get this
work but I need help.

Summary:
I need check in Motives_Controller if table Points, that is
assocciated to motives table, contains user_id & motive_id values and
return true/false or number of records...

Thanks


--~--~---------~--~----~------------~-------~--~----~
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