Doctrine 2 -наследование одной таблицы -свойство доступа дочерней сущности

У меня есть простое наследование таблиц на моих объектах, скажем, что-то вроде:

/** 
* @InheritanceType("SINGLE_TABLE")
* @DiscriminatorColumn(name="type", type="string")
* @DiscriminatorMap({"base"="BaseArticle", "extended"="ExtendedArticle"}) 
*/         
class BaseArticle extends \Models\BaseModel{
  ...
}
class ExtendedArticle extends BaseArticle{
    /**
    * @column(type="string")
    */
    protected $extendedProperty;
} 

Мне нужно сделать запрос по всем типам статей, но в некоторых типах ограничить запрос некоторым свойством, то есть в расширенном ExtendedArticle, т.е.:

SELECT a FROM BaseArticle a WHERE (a INSTANCE OF BaseAricle) OR (a INSTANCE OF ExtendedArticle AND a.extendedProperty = "xy")

Что дает мне следующее исключение:

[Semantical Error] line 0, col 406 near 'extendedProperty="xy"))': Error: Class Models\Articles\BaseArticle has no field or association named location

Итак, вопрос в том, как получить доступ к дочерним свойствам в запросе к родительскому классу?

6
задан Daniel Daranas 29 August 2013 в 08:46
поделиться