I NeueintragSymfony MongoDB kann kein neues Feld abrufen Werte
/**
* @MongoDB\Field(type="string")
*/
protected $city;
Dann Lehre Einheiten hinzugefügt haben generieren lassen. Jetzt neu erstellte Datensätze haben neues Feld "Stadt" mit Werten wie erwartet. Allerdings kann ich diese Werte nur in der Mongo-Konsole sehen. In der Doctrine-Ausgabe sind sie immer auf "null" gesetzt. Die Einheit Einträge scheint richtig
public function getFirstName()
{
return $this->firstName;
}
/**
* Get city
*
* @return string $city
*/
public function getCity()
{
return $this->city;
}
Ich habe Repository
public function allQuery($cat)
{
$q = $this->createQueryBuilder()
->sort('createdAt', 'DESC');
if ($cat) {
$q->field('category.$id')->equals(new \MongoId($cat));
}
return $q;
}
und Service
function addAllPager($perPage = 10, $cat)
{
return $this->_addPager($this->repo()->allQuery($cat), $perPage);
}
Kontroller
$helper = $this->get('appbundle.test.helper');
$tests = $helper->addAllPager(10, $cat);
Symfony Profiler zeigt mir Abfrage db.Test.find().sort({ "createdAt": -1 }).limit(10).skip(0)
. Dumped Inhalt von $ Tests
#firstName: "John"
#city: null
Was ich vermisse?
EDIT
Cache Clearing mit php bin/console cache:clear
das Problem gelöst. php bin/console doctrine:mongodb:cache:clear-metadata
war nicht genug. Danke malarzm
.
Bitte leeren Sie Ihren Cache und starten Sie Apache neu. Dies liegt normalerweise an nicht aktualisierten Hydratoren oder zwischengespeicherten Metadaten, die noch nicht aktualisiert wurden. – malarzm