I have a project on Symfony2. I should say that I don't consider myself a master of Symfony2 in any way. You could say I'm a newbie.
My entities are bound via YAML to database and an Entity class is created in php not bound by annotations.
I have an Entity likes this:
Project/CoreBundle/Resources/config/doctrine/Card.orm.yml
Project/CoreBundle/Entity/Card.php
Card - is a dashboard element, that can be dragged around for user's convenience.
The corresponding Card.orm.yml and Card.php have structure that correspond to table in db. I created this piece of code and worked fine.
The Problem: now that I try to add more fields to table, to orm and Entity, they are not being selected by Symfony2/Doctrine2 query (I've looked it up in debugger and not even in query the new field is SELECTed).
More so, I try to add any field and it doesn't become bound. In retrieved object it is always NULL. I've looked up MAPPING of this entity and this field is BEING MAPPED. But in select query, again, it is not present. I've used clear caching mechanisms and such - didn’t work. I've deleted OTHER fields from orm and entity - Doctrine2 throws exceptions, though when I remove this field (it still being present in table) and works the same, just returns null.
What works is this:
$queryBuilder
->select(array('card','card.isSpecialCard'))
The "isSpecialCard" field is the one that's not being bound to select, so I have to custom-select it out of table and THEN it's loaded via select. Also, it's being loaded in another level of array, NEXT TO THE OBJECT OF CARD not IN THE OBJECT, though the object still has that field AND IT HAS VALUE AS IF IT WAS SELECTED.
I am using Symfony 2.1.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…