1
デフォルトの文字列正規化(Doctrine_Inflector::urlize()
"sluggifier"によって提供)は自分のプロジェクトには適していないため、私自身のアルゴリズムを利用する必要があります。symfony/DoctrineのSluggable Builderへの予想パス
次のように私は私のスキーマを設定します。
MyObject:
actAs:
Sluggable:
fields: [name]
builder: array('TextUtility', 'normalize')
columns:
name: string(255)
をと(私もアプリのlibフォルダを試してみましたが)、私は私が見つけたいくつかの命令に従って、私のプロジェクトのlibフォルダに私のユーティリティクラスを追加しました私はsymfony doctrine:build --all
を実行すると
<?php
//lib/TextUtility.class.php
class TextUtility {
public static function normalize($str) {
/* ... */
return $str;
}
}
?>
私は次のエラーで迎えています:
Warning: call_user_func_array() expects parameter 1 to be a valid callback, function 'array('TextUtility', 'normalize')' not found or invalid function name in /symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Template/Listener/Sluggable.php on line 171
別のフォーラムで
私は間違った場所に自分のユーティリティを置いているだけで、必要なときにはロードされていないと思います。私は間違った場所に置いていますか? Doctrine's documentationは、私が間違ったページを見ていない限り、主題は言及していないようです。 YAMLで
うわー、これはあるとして明らかに、私はそれを逃した信じることができません。ありがとう! – Dolph