我有一個簡單的問題,但我不知道如何解決它。JMSSerializerBundle中DB自定義日期時間格式
我有一個項目在Symfony2與FOSRestBundle + JMSSerializerBundle。 在我的實體,我有一些日期時間字段,用戶應該能夠確定由API檢索到的日期時間的格式,你可以看到:
我的問題是我不知道如何告訴JMSSerializerBundle爲我的日期時間字段使用用戶定義的格式。 目前我有這樣的:
/**
* @var \DateTime
*
* @ORM\Column(name="custom_date", type="datetime")
* @Serializer\Type("DateTime<Y-m-d>")
* @Serializer\Expose
*/
protected $custom_date;
我發現的唯一方法是從JMSSerializerBundle使用VirtualProperty方法,但它意味着,我的實體必須與用戶的關係。 類似的東西:
/**
* @Serializer\VirtualProperty
* @Serializer\Type("string")
* @Serializer\SerializedName("custom_date")
*/
public function getVPCustomDate() {
$format = $this->user->getSetting('date_format');
return $this->custom_date->format($format);
}
但是,如果沒有意義的這樣做的,所以我希望你有一些替代品!
感謝您的時間和您的幫助。