Hi,

I can't get a HABTM relationship right, I can't get it to show me the 
results I need. I looked at Cake's documentation and Googled, and I tried 
differents things, rebuilding it from examples I've found online. I just 
don't know what I'm doing wrong.

The situation is as following. I have Formats (stored in db table formats) 
and Accessories (stored in db table accessories). Accessories belongs to 
one or more Formats. So one accessory can belong to many formats and one 
format can have different accessories. I made a linking table named 
formats_accessories (with id, format_id and accessory_id). Then I let cake 
bake do it's magic. 

My Accessory model:
public $hasAndBelongsToMany = array(
'Format' => array(
'className' => 'Format',
'joinTable' => 'formats_accessories',
'foreignKey' => 'accessory_id',
'associationForeignKey' => 'format_id',
'unique' => 'keepExisting',
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'finderQuery' => '',
'deleteQuery' => '',
'insertQuery' => ''
),
);

My Format model:
public $hasMany = array(
'FormatsAccessorie' => array(
'className' => 'FormatsAccessorie',
'foreignKey' => 'format_id',
'dependent' => false,
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'exclusive' => '',
'finderQuery' => '',
'counterQuery' => ''
)
);

I don't think this is right, but whatever I tried, changing 
'FormatsAccessorie' to Format or changing the $hasMany to 
$hasManyAndBelongsTo, it just won't work!

What I want to accomplish. In the index function of AccessoriesController I 
need to show the accessories that belong to a certain format_id. So not all 
accessories (I know how to make that), but just the accessories that belong 
to a certain format (which id i set in a session). If you go to 
mywebsite.com/accessories it needs to show the accessories that belongs to 
a format you already picked (and is stored in a session).

I really hope you can help me. I know google and this group are full of 
HABTM questions, but I already looked at so many that I've given up because 
I just can't get it right.

-- 
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].
Visit this group at http://groups.google.com/group/cake-php?hl=en-US.


Reply via email to