chenws1985
- chenws1985 赞了回复
你的extend是一个Json, 你需要在Model中可以直接访问是吧?
我们写了一个包,https://github.com/ethercap/common ,不太好意思,没有来得及写文档。里面有许多实用的代码,其中就有你这种情况的解决办法。
在composer中加上"ethercap/common":"dev-master"
,然后执行composer update
在使用时,这么使用,如果是一个model
<?php use ethercap\common\behaviors\AttrBehavior; class xxModel extends Model { public function behaviors() { return [ 'class' => AttrBehavior::className(), //你的json的数据库字段 'attrKey' => 'extend', 'properties' => [ 'type', 'area', //其它属性.... ], ]; } } ?>
只要这么配好之后,$model->type,$model->area是可以直接取的,$model->save()时也会存入extend的json中,不用担心任何问题,它跟正常$model的属性是一样的,只是存储方式不一样罢了。另外,rules之类也都是可以正常使用的。