Hello! Is there a way to handle this:

Example: I have tables users, languages, languagelevels,
languages_users

Languages_users have following fields:
 - user_id
 - language_id
 - languagelevel_id

This is simply: each users speaks a language with a skill level

Users model has:
.....
        var $hasAndBelongsToMany = array('Language' =>
                               array('className'  => 'Language',
                                     'joinTable'  => 'languages_users',
                                     'foreignKey' => 'user_id',
                                     'associationForeignKey'=>
'language_id',
                                     'conditions' => '',
                                     'order'      => '',
                                     'limit'      => '',
                                     'unique'       => true,
                                     'finderSql'  => '',
                                     'deleteQuery'=> '',
                               ),
                               'Languagelevel' =>
                               array('className'  => 'Languagelevel',
                                     'joinTable'  => 'languages_users',
                                     'foreignKey' => 'user_id',
                                     'associationForeignKey'=>
'languagelevel_id',
                                     'conditions' => '',
                                     'order'      => '',
                                     'limit'      => '',
                                     'unique'       => true,
                                     'finderSql'  => '',
                                     'deleteQuery'=> '',
                               )
                               );

The problem is, when I try to save the data I got following:

INSERT INTO `users` (...everything is ok here...)

DELETE FROM `languages_users` WHERE user_id = '32'
INSERT INTO `languages_users` (user_id,language_id) VALUES ('32','1')
INSERT INTO `languages_users` (user_id,language_id) VALUES ('32','4')

DELETE FROM `languages_users` WHERE user_id = '32'
INSERT INTO `languages_users` (user_id,languagelevel_id) VALUES
('32','1')
INSERT INTO `languages_users` (user_id,languagelevel_id) VALUES
('32','3')

Second DELETE makes it wrong. Is there a way to handle this situation?
Or maybe I should redesign my tables?


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" 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
-~----------~----~----~----~------~----~------~--~---

Reply via email to