+ -
当前位置:首页 → 问答吧 → HAS_ONE 外键如果不和主键关联怎么写

HAS_ONE 外键如果不和主键关联怎么写

时间:2011-08-21

来源:互联网

比如A表有id(主键),fid这两个字段,B表有fid,content这两个字段,用HAS_ONE时foreign_key设为fid查询会和A中的主键id关联,怎么样写才能让B的fid能和A中的非主键fid关联呢

作者: llx1216   发布时间: 2011-08-21

在模型中定义foreign key 为fid 就行了
foreign_key 关联的外键名称

外键的默认规则是当前数据对象名称_id,例如:

UserModel对应的可能是表think_user (注意:think只是一个表前缀,可以随意配置)

那么think_user表的外键默认为 user_id,如果不是,就必须在定义关联的时候显式定义 foreign_key
class AModel extends RelationModel{
     public $_link = array(
        'Profile'=>array(
        'mapping_type' =>HAS_ONE,
        'class_name'   =>'B',
         'foreign_key'=>'fid'
         ),
);
}

作者: yangweijie   发布时间: 2011-08-22