JCMais 75 Report post Posted April 16, 2011 Estou construindo duas entidades do Doctrine, a User e a Friends. Só que não estou sabendo como relacionar as duas. :( Vejamos a estrutura: -- -- Estrutura da tabela `friends` -- CREATE TABLE IF NOT EXISTS `friends` ( `user_id` int(10) NOT NULL, `friend_id` int(10) NOT NULL, `status` varchar(10) NOT NULL DEFAULT 'normal', PRIMARY KEY (`user_id`,`friend_id`), KEY `FK_FRIENDS_1` (`user_id`), KEY `FK_FRIENDS_2` (`friend_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ALTER TABLE `friends` ADD CONSTRAINT `friends_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE, ADD CONSTRAINT `friends_ibfk_2` FOREIGN KEY (`friend_id`) REFERENCES `user` (`id`) ON DELETE CASCADE; -- -- RELAÇÕES PARA A TABELA `friends`: -- `user_id` -- `user` -> `id` -- `friend_id` -- `user` -> `id` -- --------------------------------------- -- -- Estrutura da tabela `user` -- CREATE TABLE IF NOT EXISTS `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; Qual seria a relação correta: ManyToMany ou OneToMany? Se um usuário pode ter vários amigos, então o correto no caso seria OneToMany, porém se eu pegar a entidade por completa passa a ser ManyToMany, pois vários usuários podem ter vários amigos. Eu acho que estou confundido essas associações. :ermm: EDIT: Lendo aqui já está parecendo que é ManyToMany. <_< Bump :) Share this post Link to post Share on other sites
fabiapo 0 Report post Posted May 10, 2011 Um usuário pode ter vários amigos. Mas e um amigo, pode ter quantos usuários? Se a resposta for vários, é uma associação Many To Many. Se tiver apenas um, será uma relação One To Many. É esta a sua dúvida? Share this post Link to post Share on other sites