2011-01-13 3 views
0

Pour faire une relation entre les utilisateurs a été créé une table qui ressemble à.Relation auto-référente avec les abonnés utilisateurs amis

sql 
CREATE TABLE `friends`(
`from` INT NOT NULL, 
`to` INT NOT NULL, 
UNIQUE INDEX(`from`, `to`) 
); 

Comme vous le savez - champ from et to est une des clés de user_id de la table users. J'utilise Kohana 3.09 avec son module par défaut Auth.

La question est ...

* Comment faire fonctionnalité ORM autour des relations des utilisateurs (par défaut) classe Model_User? *

Y at-il aiguille pour créer la classe supplémentaire ou peut-être j'ai eu quelques erreurs avec les relations un à plusieurs trouth et many_to_many trouth parce que cela n'a pas fonctionné. S'il vous plaît aider. Mes meilleures salutations.

Répondre

1

Vous devriez vérifier cette section de la documentation:

http://kohanaframework.org/guide/orm/relationships#hasmany

Vous aurez besoin de quelque chose comme cela dans votre classe utilisateur

protected $_has_many = array(
    'friends' => array(
     'model' => 'user', 
     'through' => 'friends', 
     'far_key' => 'from', 
     'foreign_key' => 'to', 
    ) 
); 

Ces options sont utilisées at this part in the source code.

+0

Je vais bien le tester aujourd'hui. Parce que j'ai déjà été testé comme ça et ça ne m'a pas donné le résultat que je voulais. ty, verra – lazycommit

+1

Si cela ne fonctionne pas, voyez si vous pouvez trouver quelle requête SQL il a utilisé, cela vous pointera dans la bonne direction. – Lethargy

+0

@Lethargy, je crois que ce devrait être «far_key» pas «loin-clé» – Zahymaka

Questions connexes