к сожалению, у symfony 1 есть жестко запрограммированный список объектов, созданных на фабриках, и вы не сможете изменить это без исправления самой платформы (что не является необоснованным, так как ветка 1.x больше не будет иметь новых возможностей, конфликтующие обновления)маловероятно)
код, который вам нужно будет исправить, будет, вероятно, где-то рядом с этим: http://trac.symfony -project.org / browser / branch / 1.4 / lib / config / sfFactoryConfigHandler.class.php# L34
несколько хороших советов по исправлению фреймворка:
- сделайте резервную копию ваших файлов "базы исправлений"
- сделайте свой патч, проверить это
- сгенерировать diff между исходной версией и исправленной версией (т. е. с помощью команды linux
diff
)
сохранить diff с описанием в хранилище исходных текстов
Таким образом, если вам когда-нибудь понадобится обновить второстепенные версии фреймворка, просто обновите код и повторно примените патч (linux - patch -p0 < mydifffile
- подробности в Google) - надеюсь, не будетonflicts и все будет работать просто отлично.