带json格式API的日期时间



很抱歉我英语不好,顺便说一句,这不是我妈妈的母语。

因此,我在syfmony 3上使用FOSRestBundle创建了一个API:这个:

public function getHoraireAction(){
$Horaire = $this->getDoctrine()->getRepository('CBMedBundle:Horaire')-    >findAll();
if(!$Horaire){
  throw $this->createNotFoundException();
}
return $Horaire;
}

Entity Horaire.php与JMSSerializer

<?php
namespace CBMedBundleEntity;
use DoctrineORMMapping as ORM;
use JMSSerializerAnnotationExclusionPolicy;
use JMSSerializerAnnotationExpose;
use JMSSerializerAnnotationGroups;
use JMSSerializerAnnotationVirtualProperty;
/**
* Horaire
*
* @ORMTable(name="horaire")
* @ORMEntity(repositoryClass="CBMedBundleRepositoryHoraireRepository")
* 
* @ExclusionPolicy("all")
*/
class Horaire
{
/**
 * @var int
 *
 * @ORMColumn(name="id", type="integer")
 * @ORMId
 * @ORMGeneratedValue(strategy="AUTO")
 */
private $id;
/**
 * @var time
 *
 * @ORMColumn(name="Debut", type="time", length=10)
  * @Expose
 */
private $debut;
/**
 * @var time
 *
 * @ORMColumn(name="EntreeSalle", type="time", length=10)
  * @Expose
 */
private $entreeSalle;
/**
 * @var time
 *
 * @ORMColumn(name="HeureAnesthesie", type="time", length=10)
  * @Expose
 */
private $heureAnesthesie;
/**
 * @var time
 *
 * @ORMColumn(name="Operation", type="time", length=10)
  * @Expose
 */
private $operation;
/**
 * @var time
 *
 * @ORMColumn(name="incision", type="time", length=10)
  * @Expose
 */
private $incision;
/**
 * @var time
 *
 * @ORMColumn(name="finOpe", type="time", length=10)
  * @Expose
 */
private $finOpe;
/**
 * @var time
 *
 * @ORMColumn(name="Reveil", type="time", length=10)
  * @Expose
 */
private $reveil;
/**
 * @var time
 *
 * @ORMColumn(name="Sortie", type="time", length=10)
  * @Expose
 */
 private $sortie;
 /**
 * @ORMOneToOne(targetEntity="CBMedBundleEntityInterventions", cascade=  {"persist"})
* @Expose
 */
 private $Interventions;
 etc..

一切正常,但API似乎没有返回具有"时间"类型的字段的真实值。

在mysql 上的Horaire.php日期时间数据

这就是当我测试API(使用post-man)时得到的

日期时间错误

请告诉我该怎么修。

感谢

好的,我找到了解决方案。

我不得不加上这些行:

use JMSSerializerAnnotationType;
//.....
/**
 * @var time
 *
 * @ORMColumn(name="Debut", type="time", length=10)
 * @Type("DateTime<'h-m-s'>")
  * @Expose
 */
private $debut;
etc..

最新更新