symfony2 엔티티에서 십진수 정밀도와 스케일을 어떻게 설정합니까? 나는이 같은 내 기업에 소수점 데이터 유형을 사용하여 경도 필드에 위도를 정의했습니다 :편집 폼에서 반올림 된 십진수 symfony2 + Doctrine2
/**
* @ORM\Column(type="decimal", precision="10", scale="6", nullable=true)
*/
protected $latitude;
제대로 소수를 절약 할 새로운 객체를 지속 (내가 phpMyAdmin을에서 52.406374을 볼 수 있습니다). 그러나 편집 양식을 표시 할 때 숫자는 52,406으로 반올림되며 업데이트 후 52.406000으로 mysql에 저장됩니다. 아마도 Doctrine 구성에 문제가있을 수 있습니다. 그러나 무엇을 모르겠습니다.
왜 위도와 경도가 반올림됩니까?
해결책을 발견 :
심포니의 폼 성분 TYPE = "텍스트"로 소수점 형식 필드를 렌더링한다. 사용하는 경우 :
->add('latitude', 'number', array(
'precision' => 6,
))
올바르게 렌더링됩니다. 코멘트의 스레드가 내 문제를 설명하지 않습니다. 그들은 'float'정밀도로 버그를 이미 수정 한 것 같습니다. 나뭇 가지 템플릿에서 위도를 표시 할 때 적절한 (반올림되지 않은) 값을 표시하고있었습니다.
[this] (http://stackoverflow.com/questions/5635500/doctrine-2-decimal-can-only-contain-14-digits)로 인한 것이 아닙니까? – jkucharovic