Doctrine2自定义类型阵列水合作用

时间:2016-09-20 16:03:37

标签: doctrine-orm

我在我的ZF2项目中包含knplabs/doctrine-behaviors模块以获取可地理编码行为。它添加了一个自定义映射类型point,它将lat和lng的值存储在mysql point列中。

问题是,如果我选择阵列水合模式,实体字段的值不会在结果集中得到水合。结果是一个对象,应该是一个数组。

有没有办法为自定义字段类型或其他任何内容设置自定义水化策略?

当前结果:

array(1) { 
    ["id"]=> int(269)
    ["address"]=> array(4) {
        ["id"]=> int(269)
        ["street"]=> string(14) "Rathausplatz 1" 
        ["location"]=> object(Knp\DoctrineBehaviors\ORM\Geocodable\Type\Point)#1504 (2) { 
            ["latitude":"Knp\DoctrineBehaviors\ORM\Geocodable\Type\Point":private]=> float(50.938212)
            ["longitude":"Knp\DoctrineBehaviors\ORM\Geocodable\Type\Point":private]=> float(6.959035) 
        }
    }
}

通缉结果:

array(1) { 
    ["id"]=> int(269)
    ["address"]=> array(4) {
        ["id"]=> int(269)
        ["street"]=> string(14) "Rathausplatz 1" 
        ["location"]=> array(2) { 
            ["latitude"]=> float(50.938212)
            ["longitude"] => float(6.959035) 
        }
    }
}

0 个答案:

没有答案