首页 > 解决方案 > yii php中的连接表

问题描述

我想创建一个连接表tbl_guid_cost_centre,无需我手动将其保存到数据库即可处理。我尝试将此添加到我的关系中:

'costCentre' => [
            self::HAS_ONE,
            'CostCentre',
            'guid_to',
            'foreignKey' => 'guid',
            'tbl_guid_cost_centre(guid_to, cost_center_id)',
            "order" => "id desc"],

这样我在保存 costCentre 时,会在我的tbl_guid_cost_centre. 但是我收到了错误:

未定义属性“CHasOneRelation.0”。

有什么建议吗?

标签: phpyiijunction-table

解决方案


您可以在关系中使用关键字来创建连接表through

public function relations() {
        'guidCostCentre' => [
            self::HAS_ONE,
            'GuidCostCentre',
            ['guid_to' => 'guid']
        ],
        'costCentre' => [
            self::HAS_ONE,
            'CostCentre',
            'cost_centre_id',
            'through' => 'guidCostCentre'
        ]
    }

推荐阅读