Abgerundete Dezimalstelle in Bearbeitungsform Symfony2 + Doctrine2

Wie stelle ich die Dezimalgenauigkeit und Skalierung in der symfony2-Entität ein? Ich habe Breitengrad in Längengradfeldern mit dem folgenden dezimalen Datentyp in meiner Entität definiert:

/**
 * @ORM\Column(type="decimal", precision="10", scale="6", nullable=true)
 */
protected $latitude;

Wenn ein neues Objekt beibehalten wird, wird die Dezimalzahl korrekt gespeichert (ich kann 52.406374 in phpMyAdmin sehen). Beim Anzeigen des Bearbeitungsformulars wird die Zahl jedoch auf gerundet52,406 und nach dem Update wird es in MySQL als 52.406000 gespeichert. Wahrscheinlich stimmt etwas nicht mit meiner Doctrine-Konfiguration, aber ich weiß nicht, was.

Warum werden Breite und Länge gerundet?

Eine Lösung gefunden:

Die Form-Komponente von Symfony gibt das dezimale Formularfeld als type = "text" aus. Beim Benutzen:

->add('latitude', 'number', array(
    'precision' => 6,
))

Es wird richtig gerendert. Der Thread aus dem Kommentar beschreibt mein Problem nicht. Ich vermute, sie haben bereits einen Fehler mit der Genauigkeit "In Float umwandeln" behoben. Wenn ich den Breitengrad in der Zweigschablone anzeigte, zeigte er den richtigen (nicht gerundeten) Wert an.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage