3

私は Doctrine2 を使用しており、WKTジオメトリを表す文字列プロパティを含むエンティティがあります。

class Entity {
    /** @Column(type="string") */
    protected $wkt;
}

このフィールドを透過的にデータベースのGEOMETRYフィールドに保存したいと思います。

INSERT INTO ... VALUES(GeomFromText(?))
SELECT AsText(field) FROM ...

カスタム マッピング タイプを見てみましたが、そのような SQL 関数を適用する場所が見つかりませんでした。

何か案が?

4

2 に答える 2

0

多分あなたはLifecycleCallbacksを見ることができます:

/**
 * @PrePersist
 */
public function sendOptinMail() {
    //do sql query : SELECT GeoFromText()...
    $this->yourField = ...
}

次に、フィールドを戻り値に設定します。

于 2011-10-14T12:09:56.377 に答える
0

この機能は現在実装されていませんが、機能リクエストが存在することがわかりました。

http://www.doctrine-project.org/jira/browse/DBAL-15

Doctrine 2.2で利用可能になるかもしれません

更新: この機能は、まもなくリリースされる 2.2 で確認されています。

更新: これは Doctrine 2.2 で利用可能になりました!

于 2011-10-14T18:34:55.530 に答える