Pregunta

Tengo 2 tablas en un MySQL DB, estoy usando Doctrine 1.2 y Symfony 1.4.4

InstalledBase y Spare

Installedbase:
ib_id
app_id
location

y

Spare:
spare_id
app_id
amount

Ahora quiero unirme a las tablas para mostrar cuántos de la aplicación hay en el repuesto.

p.ej

$q = self::createQuery("l")
->select('i.*, s.*')
->from('InstalledBase i, Spare s')
->execute();

return $q;

La doctrina sabe que hay una relación entre las tablas en el campo APP_ID, pero recibo el error

500 | Internal Server Error | Doctrine_Hydrator_Exception 
"Spare" with an alias of "s" in your query does not reference the parent component it is related to.

Yaml:http://pastey.net/137237No puedo resolver esto, ¿alguien sabe de qué doctrina se queja?

¿Fue útil?

Solución

->from('InstalledBase i, i.Spare s')

... "de repuesto" con un alias de "S" en su consulta no hace referencia al componente principal con el que está relacionado.

Agregue algunos criterios adicionales a esta consulta para no devolver todo de ambas tablas.

Otros consejos

Por lo que parece, no le has dicho a Doctrine que esas 2 tablas están relacionadas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top