先分别创建三张表:think_user think_group think_user_group
user 表里有id、name字段
group 表里有id、groupName字段
user_group 表里有uid、gid字段
user_group 表里的uid、gid字段都作为主键
然后建立一个Model
<?php
class UserModel extends RelationModel{
protected $_link=array(
"group"=>array(
"mapping_type"=>MANY_TO_MANY,
"foreign_key"=>"uid", //中间表的字段
"relation_foreign_key"=>"gid", //中间表的字段
"relation_table"=>"think_user_group" //表名必须为全称(包括表前缀),即使是在配置文件中配置过了表前缀,这里也要加上!
)
);
}
?>
在Model中:
foreign_key 的uid是与user表里的id字段关联
relation_foreign_key的gid是与group里的id字段关联
接着建立一个Action
<?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
$db=D("user");
$list=$db->relation(true)->select();
echo "<pre>";
print_r($list);
}
}
完成! 最后可以看到数据表里的相关数据的全部输出了!