2017-06-15 68 views
2

我是Symfony中的新手,所以請原諒我的無知。 我嘗試使用Sonata Admin和'sonata_type_datetime_picker'字段類型來編輯某些事件的日期和時間。 但sonata_type_datetime_picker返回錯誤的時間。它減少了一個小時的時間。索納塔管理日期時間選擇器返回錯誤時間

Here's a filled form field screenshot (time is 10:00):

Here's dump of form field value (time is 09:00):

這裏的窗體域選項:

->add('datebegin', 'sonata_type_datetime_picker', array(
     'format'   => 'dd.MM.yyyy HH:mm', 
     'label'    => 'Event begins at...', 
     'dp_use_current' => false, 
     'model_timezone' => 'Europe/Moscow' 
    )) 

我想指出,只有在服務器上存在此錯誤。在我的本地機器上一切正常。 它可能是什麼?

非常感謝!

回答

3

我也有這個問題。我認爲你需要升級服務器上的軟件(包:tzdata等)。

參見:https://en.wikipedia.org/wiki/Moscow_Time

如果不幫你,你可以使用這個技巧:

'view_timezone' => 'Europe/Minsk' 

參見:

例如:

->add('endTimestamp', 'sonata_type_datetime_picker', array(
     'widget' => 'single_text', 
     'label' => 'sip_event_end_timestamp', 
     'dp_side_by_side'  => true, 
     'dp_use_seconds'  => false, 
     'model_timezone'  => 'Europe/Moscow', 
     'view_timezone'   => 'Europe/Minsk', 
     'format' => 'dd.MM.yyyy HH:mm' 
    ) 
)