1
0
mirror of synced 2025-01-17 22:11:41 +03:00

Fixed a bug when using Templates and exporting classes using inheritance

If you hada base Doctrine_Record class that implemented a Template and some classes
that inherited from this one using single table inheritance, the export process
failed because it tried to create several times the same table
This commit is contained in:
jackbravo 2007-08-23 00:57:33 +00:00
parent 25554aa0f7
commit b01212e2e8

View File

@ -1043,7 +1043,8 @@ class Doctrine_Export extends Doctrine_Connection_Module
// check if class is an instance of Doctrine_Record and not abstract
// class must have method setTableDefinition (to avoid non-Record subclasses like symfony's sfDoctrineRecord)
if ($class->isSubclassOf($parent) && ! $class->isAbstract() && method_exists($class->getName(), 'setTableDefinition')) {
if ($class->isSubclassOf($parent) && ! $class->isAbstract() && $class->hasMethod('setTableDefinition')
&& $class->getMethod('setTableDefinition')->getDeclaringClass()->getName() == $class->getName()) {
$record = new $name();
$table = $record->getTable();
$data = $table->getExportableFormat();