我有一个基于带有空间POINT
字段的 mysql 表的 yii 模型。查看此模型的记录时,我想以“55.0000,-89.5000”的格式显示坐标。在默认生成的 CRUD 视图中,目前该字段不显示任何内容。
我想我必须以AsText
某种方式使用 mysql 函数,也许在beforeFind()
?
我怎样才能做到这一点?
更新
我发现我可以使用以下命令将值打印为“POINT(55.0000,-89.5000)”:
public function beforeFind()
{
parent::beforeFind();
$criteria = new CDbCriteria();
$criteria->select = "AsText(coordinates) AS coordinates";
$this->dbCriteria->mergeWith($criteria);
}
但是,这具有导致所有其他字段“未设置”的不幸副作用。