Dans mon application de tennis, ma table 'match' a deux joueurs (évidemment). J'ai utilisé player1_id et player2_id comme moyen de suivre les identifiants de l'utilisateur. Je n'ai pas inclus une clé étrangère user_id cependant.quelle relation cakephp devrait être utilisée pour les groupes d'utilisateurs? Peut-on utiliser un tableau pour foreign_ID?
Il y a aussi une table 'utilisateur' d'où je veux tirer les noms des joueurs.
Parce que « match » a plus d'un utilisateur et les utilisateurs ont plus d'un modèle, je me demande si la configuration du modèle suivant fonctionnera:
J'ai installé le modèle utilisateur comme ceci:
var $name = 'User';
var $hasMany = array(
'Match' => array(
'className' => 'Match',
'foreignKey' => array('player1_id', 'player2_id'),
'dependent' => true,
)
et le modèle match comme celui-ci:
var $name = 'Match';
var $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'user_id',
'conditions' => '',
)
Je dois montrer à l'utilisateur premier/dernier nom pour chaque joueur où user_id = player1_id ou player2_id. Est-ce que ça va marcher? Une clé étrangère peut-elle utiliser un tableau? Et une opération de modèle peut-elle utiliser un 'ou' lors d'une recherche?
Ou y a-t-il une meilleure façon de structurer une table (comme une correspondance, ou pourrait être une réunion de groupe) avec plus d'un utilisateur?
Cheers, Paul
Merci. Le HASBTM m'a frappé comme le chemin à parcourir, mais n'était pas sûr. Je pensais qu'il pourrait être tenté d'approche puisque vous pourriez avoir des situations similaires, comme une table avec trois/quatre joueurs ou plus. Est-ce que chaque modèle HASBTM d'utilisateur/match prendrait aussi un tableau comme ci-dessus, puisque chaque match a deux joueurs? – Paul
@Paul Désolé, je ne comprends pas la question. Pour votre référence cependant, l'acronyme habituel est "HABTM". – deceze
Merci deceze pour votre aide. HABTM, noté. Ce que je voulais comprendre, c'est si à la fois player1_id et player2_id devraient être référencés dans le modèle de l'utilisateur? Comme c'est au-dessus. Étant donné que la table de correspondance a deux ID de lecteur, chaque ID doit-elle être référencée dans la relation HABTM? Si cela a été comparé à dire, un blog avec un Tags et Posts HABTM, chacun aurait seulement une clé étrangère pour l'autre. Espérons que cela a plus de sens. Très appréciée. – Paul