thinkphp关联模版一对多查询失效

在学习ThinkPHP的关联模型时,遇到了配置和查询的问题。文章详细描述了在设置'foreign_key'时的理解误区,即该字段应为被关联表中的外键,并解释了如何正确配置关联模型以实现关联查询。
摘要由CSDN通过智能技术生成

这两天在看thinkphp的关联模型这一块,跟着开发文档做,但是一直不能实现关联查询。

关联模型配置如下:

namespace Home\Model;
use Think\Model\RelationModel;
class TestModel extends RelationModel {	
	protected $_link = array(
        'Ttt'=>array(
            'mapping_type'  => self::HAS_MANY,
            'class_name'    => 'ttt',
            'foreign_key'   => 'TestId',
        )
    );
}

遇到两个问题:

1、按照开发文档的说法,实在搞不清楚'foreign_key'的定义,测试了好几次,终于明白了这个字段应该是被关联的表的外键,如上述代码中的'foreign_key'应该是'ttt'表中的‘TestId’字段,这个字段应该就相当于表'Test'的主键;

2、配置完成后,一直无法实现关联查询:

$m=D('Test');
$return=$m->relation(true)->select();
一直找不到原因,后来开启'PAGE_TRACE',查看sql语句,终于找到线索:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值