多对多关联模型,MANY_TOMANY

先分别创建三张表:think_user   think_group   think_user_group

user 表里有id、name字段

group 表里有id、groupName字段

user_group 表里有uid、gid字段

user_group 表里的uid、gid字段都作为主键

 

然后建立一个Model

 1 <?php
 2  class UserModel extends RelationModel{
 3      protected $_link=array(
 4        "group"=>array(
 5            "mapping_type"=>MANY_TO_MANY,
 6            "foreign_key"=>"uid",                 //中间表的字段
 7            "relation_foreign_key"=>"gid",        //中间表的字段
 8            "relation_table"=>"think_user_group"  //表名必须为全称(包括表前缀),即使是在配置文件中配置过了表前缀,这里也要加上!
 9        )
10      );
11  }
12 ?>

在Model中:

foreign_key 的uid是与user表里的id字段关联

relation_foreign_key的gid是与group里的id字段关联

 

 

接着建立一个Action

 1 <?php
 2 // 本类由系统自动生成,仅供测试用途
 3 class IndexAction extends Action {
 4     public function index(){
 5         $db=D("user");
 6         $list=$db->relation(true)->select();
 7         echo "<pre>";
 8         print_r($list);
 9     }
10 }

 

完成! 最后可以看到数据表里的相关数据的全部输出了!

posted @ 2015-10-05 11:11  哟风  Views(316)  Comments(0Edit  收藏  举报