我正在尝试建立一个社交网络类型的网站,用户可以在这里与朋友互相发送消息。
我有一个users表和一个friends表,它基本上有一个user_id和user_friends_id。 使用cakePHP,如何将user_id和user_friend_id链接回users表? 我使用bake来创建我的所有模型和控制器,但是当我查看用户页面时,我收到了一个错误,因为cakePHP不知道如何将user_friend_id链接回users表。
有人可以帮忙吗?
答案 0 :(得分:2)
表名(字段):
users (user_id, user fields....)
friends_users (user_id, friend_id)
关联:
User hasAndBelongsToMany Friend
Friend hasAndBelongsToMany User
用户模型中的:
var $hasAndBelongsToMany = array(
'Friend' => array(
'className' => 'User',
'joinTable' => 'friends_users',
'foreignKey' => 'user_id',
'associationForeignKey' => 'friend_id',
);
在朋友模型中:
var $useTable = 'users';
var $hasAndBelongsToMany = array(
'User' => array(
'className' => 'User',
'joinTable' => 'friends_users',
'foreignKey' => 'friend_id',
'associationForeignKey' => 'user_id',
);