estoy usando la siguiente función de propulsión http://www.propelorm.org/documentation/09-inheritance.html.ramita instanceof para la herencia objetos
También estoy usando Symfony2 y Twig
que tienen una estructura de clases usando la característica anterior que se ve algo como esto
class Event {}
class Birthday extends Event {}
class Walking extends Event {}
ahora me pase un objeto de evento a una plantilla ramita y quiero saber qué tipo de evento es
Por ejemplo quiero mostrar una imagen de una torta si es un cumpleaños y quiero mostrar rutas mapa si el evento de caminar.
no puedo usar instanceof en la ramita ya que esta característica no existe. ¿Alguien ahora por qué esto no existe? y hay una manera que puedo replicar esta funcionalidad sin tener que hacer algo como
public function getType()
en cada clase, o
public function isBirthday()
en la clase de evento.
He encontrado esto en github pero es de ninguna utilidad para mí. He comentado sobre ellos para ver si puedo obtener una respuesta.
https://github.com/fabpot/Twig/issues/553
Creo que estoy siendo tan densa , pero parece que no puedo encontrar esa clase TwigTest en ningún lugar de @ fabpot/Twig. ¿Ha definido una clase personalizada que se extiende '\ Twig_Test', o es un alias de otra clase? '\ Twig_Test' en sí mismo es abstracto y, por lo tanto, no se puede desinstalar. –
Lo encontré. Supongo que la clase fue renombrada en algún momento en los últimos seis meses. '\ Twig_SimpleTest' funciona en lugar de' TwigTest' anterior. Ver: http://twig.sensiolabs.org/doc/advanced.html#tests –
@TwoWholeWorms No, me gusta importarlos como 'use \ Twig_Test como TwigTest; // o incluso "como prueba" '(y fue copiado de alguna parte). Se adapta mejor al estilo de codificación general – KingCrunch