【发布时间】:2011-05-18 20:50:45
【问题描述】:
默认的字符串规范化(由Doctrine_Inflector::urlize()“sluggifier”提供)不适合我的项目,所以我需要使用自己的算法。
我将架构设置如下:
MyObject:
actAs:
Sluggable:
fields: [name]
builder: array('TextUtility', 'normalize')
columns:
name: string(255)
根据我在另一个论坛中找到的一些说明,我将我的实用程序类添加到我的项目的 lib 文件夹中(尽管我也尝试了应用程序的 lib 文件夹):
<?php
//lib/TextUtility.class.php
class TextUtility {
public static function normalize($str) {
/* ... */
return $str;
}
}
?>
当我运行 symfony doctrine:build --all 时,出现以下错误:
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 似乎没有提及主题,除非我只是看错了页面。
【问题讨论】:
标签: php symfony1 doctrine slug